真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Oracle如何檢查點(diǎn)涉及的SCN-創(chuàng)新互聯(lián)

這篇文章主要介紹Oracle如何檢查點(diǎn)涉及的SCN,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),尼瀘西企業(yè)網(wǎng)站建設(shè),尼瀘西品牌網(wǎng)站建設(shè),網(wǎng)站定制,尼瀘西網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,尼瀘西網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

1. 檢查點(diǎn)涉及的SCN

(1). 數(shù)據(jù)文件中的文件頭啟動檢查點(diǎn)的scn

存儲在每個數(shù)據(jù)文件的文件頭中

select name,checkpoint_change# 

from v$datafile_header;

在安全關(guān)閉數(shù)據(jù)庫的過程中,系統(tǒng)會執(zhí)行一個檢查點(diǎn)動作,這時所有數(shù)據(jù)文件的終止scn都會設(shè)置成數(shù)據(jù)文件頭中的那個啟動scn的值。

在數(shù)據(jù)庫重新啟動的時候,Oracle將文件頭中的那個啟動scn(存在于各個數(shù)據(jù)文件里)與數(shù)據(jù)庫文件檢查點(diǎn)scn(存在于控制文件里)進(jìn)行比較,如果這兩個值相互匹配,oracle接下來還要比較數(shù)據(jù)文件頭中的啟動scn和控制文件中數(shù)據(jù)文件的終止scn。如果這兩個值也一致,就意味著所有數(shù)據(jù)塊的redo記錄都已經(jīng)提交,所有對數(shù)據(jù)庫的修改都沒有在關(guān)閉數(shù)據(jù)庫的過程中丟失,因此這次啟動數(shù)據(jù)庫的過程也不需要任何恢復(fù)操作,此時數(shù)據(jù)庫就可以打開了。 

(2).數(shù)據(jù)文件檢查點(diǎn)SCN,

存儲在控制文件中:

SELECT T.NAME,T.CHECKPOINT_CHANGE#,b.tablespace_name

FROM  V$DATAFILE T,dba_data_files b

where t.FILE#=b.file_id;

(3).數(shù)據(jù)文件的終止scn

存儲在控制文件中

select name,last_change# 

from v$datafile;

終止SCN在數(shù)據(jù)庫關(guān)閉或者表空間脫機(jī)是才會涉及到,在正常的數(shù)據(jù)庫操作過程中,所有正處于聯(lián)機(jī)讀寫模式下的數(shù)據(jù)文件的終止scn都為null.

在安全關(guān)閉數(shù)據(jù)庫的過程中,系統(tǒng)會執(zhí)行一個檢查點(diǎn)動作,這時所有數(shù)據(jù)文件的終止scn都會設(shè)置成數(shù)據(jù)文件頭中的那個啟動scn的值。

(4).系統(tǒng)檢查點(diǎn)SCN

存儲在控制文件中

select  t.CHECKPOINT_CHANGE#

from v$database t;

(5). 日志文件的scn

select t.FIRST_CHANGE# 開始時的SCN,t.FIRST_TIME,t.NEXT_CHANGE#  結(jié)束時的SCN

from V$log_History  t

order by t.FIRST_TIME;

2. 發(fā)生完全檢查點(diǎn)時:

數(shù)據(jù)文件頭,標(biāo)識上次處理完的啟用scn。

而CKPT進(jìn)程則將所有數(shù)據(jù)文件(無論redo log中的數(shù)據(jù)是否影響到該數(shù)據(jù)文件)文件頭上記錄的Start SCN更新為Next SCN; (通過視圖v$datafile_header的字段checkpoint_change#可以查詢)

同時將控制文件中的System Checkpoint SCN更新為Next SCN; (通過視圖v$database的字段checkpoint_change#可以查詢)

每個數(shù)據(jù)文件對應(yīng)的Datafile Checkpoint)也更新為Next SCN;(通過視圖v$datafile的字段checkpoint_change#可以查詢)

從Low SCN到Next SCN之間的所有redo記錄的數(shù)據(jù)就被DBWn進(jìn)程寫入數(shù)據(jù)文件中.    

3. 系統(tǒng)是如何產(chǎn)生一個最新的SCN的:

實(shí)際上,這個數(shù)字是由當(dāng)時的timestamp轉(zhuǎn)換過來的。每當(dāng)需要產(chǎn)生一個最新的SCN到redo記錄時,系統(tǒng)獲取當(dāng)時的timestamp,將其轉(zhuǎn)換為數(shù)字作為SCN。

我們可以通過函數(shù)SCN_TO_TIMESTAMP將其轉(zhuǎn)換回timestamp:

select dbms_flashback.get_system_change_number, SCN_TO_TIMESTAMP(dbms_flashback.get_system_change_number) 

from dual;

也可以用函數(shù)timestamp_to_scn將一個timestamp轉(zhuǎn)換為SCN:

select timestamp_to_scn(SYSTIMESTAMP) as scn 

from dual;

4. SCN除了作為反映事務(wù)數(shù)據(jù)變化并保持同步外,它還起到系統(tǒng)的"心跳"作用——每隔3秒左右系統(tǒng)會刷新一次系統(tǒng)SCN。

以上是“Oracle如何檢查點(diǎn)涉及的SCN”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!


網(wǎng)站名稱:Oracle如何檢查點(diǎn)涉及的SCN-創(chuàng)新互聯(lián)
文章來源:http://weahome.cn/article/dcgghh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部