①在數(shù)據(jù)庫打開并運行之后,控制文件中的系統(tǒng)檢查點scn、控制文件中的數(shù)據(jù)文件檢查點scn和每個數(shù)據(jù)文件頭中的啟動scn都是相同的

②控制文件中的每個數(shù)據(jù)文件的終止scn都為null
③NORMAL或IMMEDIATE 關(guān)閉數(shù)據(jù)庫的過程中,系統(tǒng)會執(zhí)行一個檢查點動作,這時所有數(shù)據(jù)文件的終止scn 都會設(shè)置成數(shù)據(jù)文件頭中的那個啟動scn的值。
④在數(shù)據(jù)庫重新啟動的時,Oracle將執(zhí)行兩次檢查 ◆ 看數(shù)據(jù)文件頭中的ckpt計數(shù)器是否與對應(yīng)控制文件中的ckpt計數(shù)器一致。若相等,進行第二次檢查 ◆ 比較文件頭中的啟動scn和對應(yīng)控制文件中的終止scn進行比較,如果終止scn等于啟動scn,則不需要對那個文件進行恢復(fù)
⑤數(shù)據(jù)庫打開之后,存儲在控制文件中的數(shù)據(jù)文件終止scn的值再次被更改為null,這表示數(shù)據(jù)文件已經(jīng)打開并能夠正常使用了
注:當ABORT強制關(guān)閉數(shù)據(jù)庫時不進行檢查點處理,所以終止scn仍然為無窮大。在下次啟動期間,發(fā)現(xiàn)啟動scn和終止scn不同,需要進行線程恢復(fù)。
3、SCN的增加
①SCN(System Change Number)只要數(shù)據(jù)庫被修改,就會+1,而不是一定要進行checkpoint,例如DML的發(fā)生即使沒有提交也會使SCN+1
注:SCN增加并不代表會在數(shù)據(jù)文件頭中表現(xiàn)出來,而是需要等到checkpoint執(zhí)行后才寫入(當然可能已經(jīng)增加了很多)
②如果一個DML導(dǎo)致產(chǎn)生事務(wù),則會產(chǎn)生一個SCN。這個意思是說如果一個事務(wù)包含多個dml,則只有第一個初始產(chǎn)生事務(wù)的dml產(chǎn)生scn,提交的時候又是一個scn,如果一個事務(wù)只有一個dml,拿看起來就是dml產(chǎn)生一個scn,提交或者回滾產(chǎn)生一個scn。
③Oracle 10g內(nèi)部的SCN會默認不管有沒有動作,每隔3s自動增加一次。其他需要增加的情況則再加。
④只有ckpt進程才會修改文件頭中的checkpoint計數(shù)器和SCN,DBWR只會修改數(shù)據(jù)塊,即ckpt通知dbwr寫數(shù)據(jù)文件,寫完之后ckpt更新控制文件和數(shù)據(jù)文件頭。此時若DBWR發(fā)現(xiàn)數(shù)據(jù)塊的log block還沒有被寫入日志文件,則在dbwr寫塊之前通知llgwr把log buffer中的日志寫入log文件。
注:總結(jié)一下,日志切換必定出發(fā)ckpt,但ckpt不一定會出發(fā)llgwr,但是一定會觸發(fā)dbwr4、其他的SCN
①日志文件頭中包含了Low scn、Next scn,表示給日志文件包含有從Low scn到Next scn的redo record
注:當系統(tǒng)運行時,日志文件的Next scn同樣為無窮大。而且需要注意:在恢復(fù)時不是用日志文件中的Low scn和Next scn來選擇恢復(fù)的日志文件,而是通過數(shù)據(jù)文件頭中的信息。
②數(shù)據(jù)塊中的SCN data block里面的SCN是當block被更改的時候的SCN,而數(shù)據(jù)文件有那么多 block,自然不同的block有不同的SCN,block中存在block SCN和ITL中的commit SCN。block SCN 又在塊頭和塊位都有,若不一致意味著block損壞。而ITL中的commit SCN則跟consistent gets and delay block cleanout有關(guān)。
③v$database中的checkpoint_change# 和 dbms_flashback.get_system_change_number 不同。前者是作為數(shù)據(jù)庫的最后一次checkpoint是的SCN,而后者是系統(tǒng)的最新SCN,所以一般后者都會比前者大,而當剛做完checkpoint時兩者會差不多。
④當begin backup命令發(fā)出后,相關(guān)數(shù)據(jù)文件的checkpoint scn被凍結(jié)(以及狀態(tài)標志被改變),其他一切照舊。例如:日志切換時checkpoint count正常遞增/檢查點照常寫文件,自然文件中的數(shù)據(jù)塊內(nèi)的各種scn也照常遞增。
不登高山,怎知天高;不臨深溪,焉知地厚!站在堅實的土地上,做著生命中最真實的事情;像一棵挺拔的大樹,認可自己的命運并敢于迎接屬于這一方天空的風風雨雨。
網(wǎng)頁名稱:SCN的工作機制-創(chuàng)新互聯(lián)
本文來源:http://jinyejixie.com/article32/dejpsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、服務(wù)器托管、ChatGPT、自適應(yīng)網(wǎng)站、靜態(tài)網(wǎng)站、動態(tài)網(wǎng)站
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)