Oracle 何時選擇生成重做?

Mondo 科學 更新 2024-02-04

有時,當我們執行選擇操作時,我們也可能會生成重做,其中乙個可能的原因就是刪除了預言機塊。

執行區塊清除時,如果是大型事務,則執行延遲區塊清除。

塊清除是刪除塊上修改後的資料,然後"鎖"資訊,即交易資訊。

Oracle 在與事務相關的提交列表中記錄乙個已修改塊的列表,每個列表記錄 20 個塊,並且可以根據需要分配任意數量的此類列表。

此阻止列表有乙個上限,即緩衝區快取大小的 10%

如果區塊是一次性修改的,並且區塊在記憶體中,則提交時會清除區塊上的交易資訊,否則,直到下次訪問區塊時才會被忽略,然後清除區塊中的交易資訊,稱為延遲區塊清除。

因為這個選擇修改了區塊的交易資訊,所以會生成重做

以下是基於 ITPUB 上的資訊以及我對清除塊時 SCN 填充的理解,以及會發生什麼"快照太舊"錯誤。

延遲清算塊的下乙個讀取器會根據區塊中記錄的回滾資訊,在記錄撤消時首先查詢提交,但撤消段可能已經上弦,找不到提交 SCN,但可以從撤消段中獲取最小提交 SCN,提交的事務必須小於撤消段中仍然存在的最小 SCN。

然後,預言機為塊清除的事務分配從回滾段找到的最小事務 SCN。

這是不準確的,但它是安全的,不會影響資料訪問。 這就是為什麼它被稱為上限並猜測 SCN 的上限。

如果延遲清除塊的讀取 SCN 小於減損段中最小的 SCN(撤消段已纏繞),則在減損段中找不到該數字。

據此,Oracle 無法確定選擇的 SCN 與要清除的資料塊大小之間的關係,因此出現了 ORA-01555,Oracle 不知道該資料塊。

資料不是查詢時刻所需的資料。

如果選擇的 scn 大於撤消段中最小的 scn,則預言機使用最小的 scn 作為事務的 scn 來更新區塊的 itl,從而完成區塊清除。

相關問題答案

    什麼時候買車划算?什麼時候買車最便宜,有折扣

    在買車時,選擇合適的時間和最優惠的購車方式非常重要。在本文中,我們將看看什麼時候買車很划算,以及如何獲得最便宜的交易。首先,從巨集觀角度來看,汽車市場的供需關係是影響汽車的主要因素。在需求旺季或節假日,汽車銷量會相應增加,此時,汽車的 也會隨之而來 在市場空無一人或平時空無一人的季節,車 往往比較穩...

    哥倫布什麼時候播種,什麼時候開花?

    哥倫比亞通常在春季和秋季播種,具體取決於地區和氣候條件。在華北地區,春播通常在 月進行,而秋季播種則適合在 月進行。在其他地區,播種時間可能需要根據當地氣候條件進行調整。哥倫比亞的生長速度較慢,大約需要 個月才能開花。播種後,大約需要 天才能發芽。在生長期,哥倫比亞需要充足的陽光 合適的溫度和適量的...

    紅色什麼時候開花?

    它是一種常見的花,其開花時間因地理位置和氣候條件而異。一般來說,它在春季和夏季開花,具體取決於地區。在南部地區,它通常在春季開花,大約在 月至 月。在北部地區,開花時間可能會延遲,一般在月至月之間。此外,紅葡萄酒的開花時間也受到氣候條件的影響。如果當年氣候溫暖潮濕,它可能會早早開花如果當年天氣寒冷乾...

    研究生院複試什麼時候?

    研究生入學考試通常在每年的月至月之間舉行,具體時間由各招生單位確定。例如,年研究生入學考試的複試時間一般從月開始,到月底結束,特殊情況可能會發生變化。一般來說,月份各學校會公布初試結果,教育部會在月日左右公布考研全國線,然後各學校會根據自身情況劃定各學校複試的分數線和名額,並向社會公布。研究生入學考...

    睡蓮什麼時候開花?

    睡蓮一般在春季花朵從左到右盛開,花朵非常艷麗,但在江南地區,有時可以看到三月盛開的睡蓮。因為睡蓮生長的地區範圍很廣,有的適合生活在熱帶地區,有的生長在高緯度地區,所以開花時間也會有所不同。睡蓮通常在早上 點到 點之間開放,例如埃及藍色睡蓮,在中午或下午關閉還有一些品種在中午開花,晚上關閉,比如Hel...