Oracle緩沖塊管理機(jī)制的看法
我們大家都知道關(guān)于Oracle緩沖塊管理機(jī)制一直是沒(méi)有正式發(fā)布過(guò)的,所以有許多在其方面有經(jīng)驗(yàn)的Oracle工程師都是通過(guò)相關(guān)經(jīng)驗(yàn)或者一下Oracle文檔中的注釋來(lái)推斷Oralce的緩沖塊的管理機(jī)制的。
事實(shí)上,Oracle使用v$bh視圖來(lái)記錄與數(shù)據(jù)緩沖(data buffer)相關(guān)的信息,它詳細(xì)記錄了數(shù)據(jù)緩沖中每一個(gè)數(shù)據(jù)塊(data block)的狀態(tài)信息。
在v$bh視圖中的status字段,記錄了數(shù)據(jù)塊的狀態(tài),在非OPS、非RAC這樣的集群環(huán)境中,數(shù)據(jù)塊的狀態(tài)會(huì)是下列幾種之一:xcur,cr,read,free,用戶(hù)可以通過(guò)如下命令得到數(shù)據(jù)庫(kù)的狀態(tài)信息:
- SQL> select unique status from v$bh;
 
Oracle緩沖塊狀態(tài)的意義分別是:
xcur:(exclusive current)的意思,表示該數(shù)據(jù)塊處于排外模式;
cr:表示該數(shù)據(jù)塊是一個(gè)克隆(clone)的數(shù)據(jù)庫(kù),可以執(zhí)行共享的只讀操作;
free:表示這是一個(gè)限制的數(shù)據(jù)塊,Oracle現(xiàn)在沒(méi)有使用它;
read:表示該數(shù)據(jù)塊正在從磁盤(pán)讀取數(shù)據(jù);
write:表示數(shù)據(jù)庫(kù)正在往磁盤(pán)寫(xiě)入數(shù)據(jù);
在數(shù)據(jù)庫(kù)恢復(fù)過(guò)程中,該字段還有另外兩個(gè)描述:mrec和irec:
mrec:(media recovery)表示數(shù)據(jù)塊處于介質(zhì)恢復(fù)模式;
irec:(instance recovery)表示數(shù)據(jù)塊處于實(shí)例恢復(fù)模式;
在RAC環(huán)境中,數(shù)據(jù)塊還有另外一種模式:
scur (shared current),表示該數(shù)據(jù)庫(kù)正在和其他實(shí)例共享數(shù)據(jù)。
以上的相關(guān)內(nèi)容就是對(duì)Oracle緩沖塊(data block)狀態(tài)類(lèi)型的相關(guān)內(nèi)容介紹,望你能有所收獲。
【編輯推薦】















 
 
 



 
 
 
 