SCN的機制
CN號概述
SCN是當Oracle資料庫更新後,由DBMS自動維護去累積遞增的一個數字。Oracle資料庫中一共有4種SCN分別為
系統檢查點SCN: 系統檢查點SCN位於控制檔案中,當檢查點程式啟動時(ckpt),Oracle就把系統檢查點的SCN儲存到控制檔案中。該SCN是全域性範圍的,當發生檔案級別的SCN時,例如將表空間置於只讀狀態,則不會更新系統檢查點SCN。
查詢系統檢查點SCN的命令如下
SQL> select CHECKPOINT_CHANGE# from v$database;
CHECKPOINT_CHANGE#
------------------
590694
SCN的機制
資料庫執行時的SCN
我們先看下oracle事務中的資料變化是如何寫入資料檔案的:
1、 事務開始;
2、 在buffer cache中找到需要的資料塊,如果沒有找到,則從資料檔案中載入buffer cache中;
3、 事務修改buffer cache的資料塊,該資料被標識為“髒資料”,並被寫入log buffer中;
4、 事務提交,LGWR程式將log buffer中的“髒資料”寫入redo log file中;
5、 當發生checkpoint,CKPT程式更新所有資料檔案的檔案頭中的資訊,DBWr程式則負責將Buffer Cache中的髒資料寫入到資料檔案中。
RESETLOGS操作
萬事萬物有果必有因,執行了不完全恢復操作,或者使用了備份的控制檔案進行恢復,或者執行Flashback Database操作之後,在開啟資料庫時必須指定RESETLOGS選項,這是由Oracle自身特性決定的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29196873/viewspace-1078545/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle SCN機制詳細解讀Oracle
- 【恩墨學院】深入剖析 - Oracle SCN機制詳細解讀Oracle
- 【SCN】Oracle SCN 詳細介紹Oracle
- 【SCN】Oracle推薦scn命令參考Oracle
- 【SCN】Oracle檢查scn值指令碼Oracle指令碼
- Oracle的DBMS_SCN修正以及SCN的auto-rollover新特性Oracle
- Oracle:SCNOracle
- oracle的scn及sequenceOracle
- HDFS 02 - HDFS 的機制:副本機制、機架感知機制、負載均衡機制負載
- Oracle 檢查點涉及的SCNOracle
- Oracle的SCN顯示問題Oracle
- Oracle SCN詳解Oracle
- ORACLE -詳解SCNOracle
- 透過修改控制檔案scn推進資料庫scn資料庫
- 關於SCN需要知道的事
- 響應式流的核心機制——背壓機制
- 深入瞭解SCN(轉)
- 探索JavaScript的this機制JavaScript
- Thread的interrupt機制thread
- PHP 的 SESSION 機制PHPSession
- Java的反射機制Java反射
- Java 的 SPI 機制Java
- Redis的事件機制Redis事件
- Java的代理機制Java
- Java的SPI機制Java
- 基於flashback_scn的expdp匯出
- 【執行機制】 JavaScript的事件迴圈機制總結 eventLoopJavaScript事件OOP
- [20181123]快速提升scn注意.txt
- ora-19706 scn問題
- 【等待事件】standby query scn advance事件
- JavaScript的垃圾收集機制JavaScript
- RecyclerView的複用機制View
- 強大的CAS機制
- Dubbo的微核心機制
- Rust 的宣告宏機制Rust
- 反射機制的基本用法反射
- Go GC 機制的大坑GoGC
- Kafka Consumer 的 Rebalance 機制Kafka
- Java 中的 反射機制Java反射