做爰高潮a片〈毛片〉,尤物av天堂一区二区在线观看,一本久久A久久精品VR综合,添女人荫蒂全部过程av

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

Oracleblockcleanout

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-09 07:18:47
文檔

Oracleblockcleanout

Oracleblockcleanout:簡單點說,在oracle的block上都有活動事務(wù)的標(biāo)志的,如果一個事務(wù)commit后,由于某些block在commit之前已經(jīng)寫回datafile,或者事務(wù)影響到的block數(shù)過多,則commit的時候只會清理undo segment header中的事務(wù)表信息,data block上的事務(wù)標(biāo)志不
推薦度:
導(dǎo)讀Oracleblockcleanout:簡單點說,在oracle的block上都有活動事務(wù)的標(biāo)志的,如果一個事務(wù)commit后,由于某些block在commit之前已經(jīng)寫回datafile,或者事務(wù)影響到的block數(shù)過多,則commit的時候只會清理undo segment header中的事務(wù)表信息,data block上的事務(wù)標(biāo)志不

簡單點說,在oracle的block上都有活動事務(wù)的標(biāo)志的,如果一個事務(wù)commit后,由于某些block在commit之前已經(jīng)寫回datafile,或者事務(wù)影響到的block數(shù)過多,則commit的時候只會清理undo segment header中的事務(wù)表信息,data block上的事務(wù)標(biāo)志不會清除,在否則代

簡單點說,在oracle的block上都有活動事務(wù)的標(biāo)志的,如果一個事務(wù)commit后,由于某些block在commit之前已經(jīng)寫回datafile,或者事務(wù)影響到的block數(shù)過多,則commit的時候只會清理undo segment header中的事務(wù)表信息,data block上的事務(wù)標(biāo)志不會清除,在否則代價過高。那么在一些讀取這些block時,需要將這些事務(wù)標(biāo)志進(jìn)行清除,就是延遲塊清除


塊清除即清除數(shù)據(jù)塊上與“鎖定”有關(guān)的信息。Oracle的鎖機(jī)制是一種輕量級的鎖定機(jī)制,不是通過構(gòu)建鎖列表來進(jìn)行數(shù)據(jù)的鎖定管理,而是直接將鎖作為數(shù)據(jù)的屬性,存儲在數(shù)據(jù)塊首部。因此,每次訪問數(shù)據(jù)時都要去看數(shù)據(jù)塊頭部的鎖,如果數(shù)據(jù)已經(jīng)提交,則可能需要清理這個塊,換句話說,要將這些事務(wù)信息刪除。因此這個動作就會生成redo。


Cleanout有2種,一種是fast commit cleanout(提交清除),另一種是delayed block cleanout(延遲清除).


提交清楚是如何工作的?Oracle會記錄已修改的塊列表,這些列表可以有20個塊,Oracle根據(jù)需要分配多個這樣的列表,但是如果這些修改的塊加起來超過buffer_cache的10%,oracle就停止分配這樣的列表,因此當(dāng)提交時就只會清理最多10%buffer_cache的數(shù)據(jù)塊,其余的部分就延遲清除,這樣也是為了提高commit的效率。


還有一種情況,就是當(dāng)事務(wù)還未commit時,修改的數(shù)據(jù)塊已經(jīng)寫入硬盤,當(dāng)發(fā)生commit時oracle并不會把block重新讀入做cleanout,而是把cleanout留到下一次對此塊的訪問是完成。

Cleanout有2種,一種是fast commit cleanout,

另一種是delayed block cleanout.Oracle的每個事務(wù)(transaction)修改不超過10%buffer cache的數(shù)據(jù)塊時,oracle做的是fast commit cleanout。如果一個事務(wù)(transaction)修改的塊超過10% buffer cache,那么超過的塊就執(zhí)行delayed block cleanout,還有一種情況,就是當(dāng)事務(wù)還未commit時,修改的數(shù)據(jù)塊已經(jīng)寫入硬盤,當(dāng)發(fā)生commit時oracle并不會把block重新讀入做cleanout,而是把cleanout留到下一次對此塊的訪問是完成。

當(dāng)我們update 數(shù)據(jù)之后,并且沒有commit,此時我們flush buffer cache,將修改的數(shù)據(jù)塊,flush 到硬盤,那么此時發(fā)生的就是delay block cleanout
正常情況下,會去修改block里的相關(guān)SCN。 但是實際上此時Oracle 并沒有回去修改這些block,因為再次調(diào)用成本太大。 Oracle只更新了undo segment header slot。 當(dāng)下次再次訪問這個block時,在根據(jù)undo segment 來更新block scn 和 itl 上的scn。 如果此時對應(yīng)的undo segment 已經(jīng)不存在,就會出發(fā)ORA-01555,快照過舊的錯誤。
做了delayed block cleanout之后,itl 變成了SCN。 此時lck,lb標(biāo)志為都被清零,scn也是從undo segment header transactiontable slot里面得到。如果undosegment header 上的slot被覆蓋了,那么會把undo segment 上的control scn拿來當(dāng)作upper bound scn
當(dāng)delayed block cleanout 發(fā)生時,依賴與undo segment來保證,如果undo segment 被刪除了,那么會Oracle 會使用system 表空間下的undo$ 基表來保證delayed block cleanout。
一般來說,select 是不會產(chǎn)生redo的。 但如果發(fā)生了delayed block cleanout,那么就會產(chǎn)生redo。 當(dāng)然這只是一種情況,開啟審計等,也會造成select 產(chǎn)生redo。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Oracleblockcleanout

Oracleblockcleanout:簡單點說,在oracle的block上都有活動事務(wù)的標(biāo)志的,如果一個事務(wù)commit后,由于某些block在commit之前已經(jīng)寫回datafile,或者事務(wù)影響到的block數(shù)過多,則commit的時候只會清理undo segment header中的事務(wù)表信息,data block上的事務(wù)標(biāo)志不
推薦度:
標(biāo)簽: 鯊魚 oracle 單點
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 黄骅市| 无锡市| 元阳县| 常德市| 甘谷县| 德令哈市| 施秉县| 高密市| 宁波市| 玉田县| 泸水县| 马山县| 紫金县| 福清市| 贵州省| 南郑县| 灵川县| 万源市| 陈巴尔虎旗| 兴文县| 娱乐| 庐江县| 绥阳县| 黄龙县| 大冶市| 抚宁县| 盐边县| 时尚| 新营市| 肃北| 宁武县| 揭东县| 金平| 周至县| 安顺市| 建始县| 灵宝市| 阜阳市| 阳谷县| 来安县| 巴马|