執行個體恢複與Oracle的SCN,執行個體oraclescn

來源:互聯網
上載者:User

執行個體恢複與Oracle的SCN,執行個體oraclescn

簡單理解oracle的SCN就是自己的時間功能,好比linux系統自己的時間一樣,oracle它也有自己的一套時間。

在你乾淨的關閉資料庫時shutdown immediate或者使用alter system checkpoint都會把SCN的值寫入4個位置,其中有3個位於controlfile內,還有1個位於datafile header內

controlfile裡面的三個SCN分別是:1、system checkpoint SCN  2、datafile checkpoint SCN  3、stop SCN

---system checkpoint SCN 查詢

SQL>select checkpoint_change# from v$database;

---datafile checkpoint SCN查詢

SQL>select name,checkpoint_change#  from v$datafile where name like '%user%';

---stop SCN查詢

SQL>select name,last_change# from  from v$datafile where name like '%user%';

其中這個stop SCN在資料庫正常使用的時候是NUll值

datafile header裡面的SCN是:start SCN

---start SCN 查詢

SQL>select name,checkpoint_change#  from v$datafile_header were namelike '%user%';

1、 Clean shutdown 時

       當clean shutdown 時,checkpoint會進行,並且此時datafile的stop scn和控制檔案裡的start scn會相同。 等到open資料庫時,Oracle檢查datafile header中的start scn和存於control file中的datafile的scn是否相同, 如果相同,接著檢查datafile header的start scn和存於control file中的stop scn是否相同,如果仍然相同,資料庫就會正常開啟,否則就需要recovery。

       等到資料庫開啟後,儲存在control file中的stop scn就會恢複為NULL值,此時表示datafile是open在正常模式下了。

 

2、 非正常shutdown

       如果不正常SHUTDOWN (shutdown abort),則mount資料庫後,會發現stop scn並不是等於其它位置的scn, 而是等於NULL,這表示Oracle在shutdown時沒有進行checkpoint,下次開機必須進行instance  crash recovery(執行個體恢複)。

 

注意一點:

       (1)啟動資料庫時,如果發現STOP SCN = NULL,表示需要進行instancecrash recovery;

       (2)啟動資料庫時,如果發現有datafile header的START SCN 不等於儲存於CONTROLFILE的DATAFILE SCN,表示需要進行Media recovery




oracle終止SCN可以

oracle正常運行時資料檔案終止SCN為NULL或者無窮大

如果資料庫正常關閉狀態下“各個”資料檔案終止SCN (存在控制檔案)與“相對應數”據檔案頭SCN(存在資料檔案頭) 一致則不需要恢複
 
oracle資料檔案為何要有SCN

啟動scn
Oracle把這個檢查點的scn儲存在每個資料檔案的檔案頭中,這個值稱為啟動scn,因為它用於在資料庫執行個體啟動時,
檢查是否需要執行資料庫恢複。
select name,checkpoint_change# from v$datafile_header
終止scn
每個資料檔案的終止scn都儲存在控制檔案中。
select name,last_change# from v$datafile
這個SCN號用於檢查資料庫啟動過程是否需要做instance recovery。資料庫檔案狀態改變的情況 才更改
在資料庫正常啟動並執行情況下,對可讀寫的,online的資料檔案,該SCN號為NULL
 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.