個人經驗總結:Oracle數據庫SCN號詳解

Oracle數據庫SCN號詳解:

系統檢查點scn(v$database(checkpoint_change#))

數據文件檢查點(v$datafile(checkpoint_change#))

數據文件終止scn(v$datafile(last_change#))

數據文件中存放的檢查點

啓動scn (v$datafile_header(checkpoint_change#)

1、系統檢查點scn

當一個檢查點動作完成之後,Oracle就把系統檢查點的SCN存儲到控制文件中。

select checkpoint_change# from v$database

2、數據文件檢查點scn

當一個檢查點動作完成之後,Oracle就把每個數據文件的scn單獨存放在控制文件

中。

select name,checkpoint_change# from v$datafile

3、啓動scn

Oracle把這個檢查點的scn存儲在每個數據文件的文件頭中,這個值稱爲啓動scn,

因爲它用于在數據庫實例啓動時,檢查是否需要執行數據庫恢複。

select name,checkpoint_change# from v$datafile_header

4、終止scn

每個數據文件的終止scn都存儲在控制文件中。

select name,last_change# from v$datafile

在正常的數據庫操作過程中,所有正處于聯機讀寫模式下的數據文件的終止scn都爲null.

5、在數據庫運行期間的scn值

在數據庫打開並運行之後,控制文件中的系統檢查點、控制文件中的數據文件檢查點scn

和每個數據文件頭中的啓動scn都是相同的。控制文件中的每個數據文件的終止scn都爲null.

在安全關閉數據庫的過程中,系統會執行一個檢查點動作,這時所有數據文件的終止scn

都會設置成數據文件頭中的那個啓動scn的值。在數據庫重新啓動的時候,

Oracle將文件頭中的那個啓動scn與數據庫文件檢查點scn進行比較,

如果這兩個值相互匹配,oracle接下來還要比較數據文件頭中的啓動scn和控制文件

中數據文件的終止scn。如果這兩個值也一致,就意味著所有數據塊多已經提交,所有

對數據庫的修改都沒有在關閉數據庫的過程中丟失,因此這次啓動數據庫的過程

也不需要任何恢複操作,此時數據庫就可以打開了。當所有的數據庫都打開之後,

存儲在控制文件中的數據文件終止scn的值再次被更改爲null,

這表示數據文件已經打開並能夠正常使用了。

· 震驚!原來酒駕處罰這麽嚴重

酒駕處罰標准 不要有任何一絲僥幸心理! http://image....

· 把年齡相仿的獅虎熊放一起,誰更厲害?結果出人意料

很多人都想知道獅子、老虎和熊打起來誰最厲害,于是便有好事之人把這三種動物關在一起...

· 湖北宜昌三峽壩區水面驚現神秘動物

近日,湖北宜昌,一段視頻在當地熱傳:有網友在三峽壩區拍到神秘動物,體型碩大數米長...

 
ORACLE數據庫開發經驗總結
  ---- Oracle數據庫作爲大型數據庫治理系統,近年來一直占有世界上高端數據庫的最大份額,其強大而完善的數據庫治理功能,以及ORACLE公司推陳出新的不斷努力,一直成爲IT業界矚目的焦點。 ...查看完整版>>ORACLE數據庫開發經驗總結
 
ORACLE數據庫開發經驗總結
  ---- ORACLE數據庫作爲大型數據庫管理系統,近年來一直占有世界上高端數據庫的最大份額,其強大而完善的數據庫管理功能,以及ORACLE公司推陳出新的不斷努力,一直成爲IT業界矚目的焦點。嶺澳核電站的數據庫平台采...查看完整版>>ORACLE數據庫開發經驗總結
 
經驗總結:一次Oracle數據庫冷備份恢複過程
近日,我想把oracle數據庫從我的電腦上遷移到機房的電腦上,一開始采用dmp/imp方式,但是發現需要導出很多用戶,太麻煩。所以決定采用冷備份/冷恢複的方式。 過程如下: 通過v$controlfile查看控制文件,通過v$logfi...查看完整版>>經驗總結:一次Oracle數據庫冷備份恢複過程
 
提高Oracle數據庫查詢統計速度經驗總結
大型數據庫系統中往往要用到查詢統計,但是對于數據量大的系統,用戶在進行複雜的查詢統計時往往感到速度很慢,不能滿足應用要求,這就要求我們在設計數據庫系統時進行合理設置,提高查詢統計的速度。本文結合筆者的...查看完整版>>提高Oracle數據庫查詢統計速度經驗總結
 
經驗總結:學好 Oracle 數據庫六條
經常有一些Oracle的初學者問到這個問題,這裏算是一個統一答複。 1、假如有一定的數據庫基礎,知道SQL是怎麽回事,即使寫不出來簡單的SQL,但可以看動它們,你就可以跳到2。否則請先看一下數據庫基礎和SQL語言,不需...查看完整版>>經驗總結:學好 Oracle 數據庫六條