ORACLE中的4種SCN

gaopengtttt發表於2010-08-06

1、系統檢查點SCN

每當一個檢查點完成後,ORACLE就把這個檢點對應的SCN記錄到控制檔案中

SQL> select checkpoint_change# from v$database;
 
CHECKPOINT_CHANGE#
------------------
     5969759313181

2、資料檔案檢查點

每當發生檢查點動作時,oracle把每個資料檔案SCN儲存在控制檔案中。

SQL> select name,checkpoint_change# from v$datafile;
 
NAME                                                                             CHECKPOINT_CHANGE#
-------------------------------------------------------------------------------- ------------------
/home/oradba/oradata/uatgims/system01.dbf                                             5969759313181
/home/oradba/oradata/uatgims/undotbs01.dbf                                            5969759313181
/home/oradba/oradata/uatgims/sysaux01.dbf                                             5969759313181
/home/oradba/oradata/uatgims/users01.dbf                                              5969759313181
 

3、資料檔案啟動SCN和終止SCN

每個資料檔案頭會記錄啟動SCN,而控制檔案會鉅鹿每個檔案的終止SCN

這兩個SCN 來確定檔案是否需要恢復。

SQL> select last_change# from v$datafile;
 
LAST_CHANGE#
------------
 
SQL> select checkpoint_change# from v$datafile_header;
 
CHECKPOINT_CHANGE#
------------------
     5969759313181
     5969759313181
     5969759313181
     5969759313181
 

正常執行情況下終止SCN為空。而其他SCN是一樣的。

如果幹淨的關閉所有SCN一致

如果不乾淨關閉則終止SCN為空,這個時候則代表需要進行recovery。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-670396/,如需轉載,請註明出處,否則將追究法律責任。

相關文章