<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 29.2\. 預寫式日志(WAL) _預寫式日志_(WAL)是一種確保數據完整性的標準方法。 有關它的詳細描述可以在大多數(如果不是全部的話)有關事務處理的書中找到。簡而言之, WAL的中心思想是對數據文件的修改(它們是表和索引的載體) 必須是只能發生在這些修改已經記錄到日志之后,也就是說, 在描述這些變化的日志記錄刷新到永久存儲器之后。如果我們遵循這個過程, 那么就不需要在每次事務提交的時候都把數據頁刷新到磁盤, 因為在出現崩潰的情況下可以用日志來恢復數據庫: 任何尚未附加到數據頁的記錄都將先從日志記錄中重做(這叫向前滾動恢復,也叫 REDO)。 > **Tip:** 因為WAL在崩潰之后恢復數據文件內容, 所以日志文件系統對于數據文件或WAL文件的可靠存儲是完全沒有必要的。實際上, 日志記錄開銷會降低性能,尤其是日志記錄導致文件系統_data_ 刷新到磁盤。幸運地,在記錄日期期間的數據刷新可以經常用一個文件系統掛載選項禁用, 例如,在Linux ext3文件系統上的`data=writeback`。在崩潰后日志文件系統確實提高了啟動速度。 使用WAL顯著地減少了磁盤寫的次數,因為只有日志文件需要刷新到磁盤以保證事務提交了, 而不是事務修改的所有數據文件。日志文件是順序寫的,所以同步日志的開銷要遠比同步數據頁的開銷小。 對于許多小事務修改數據存儲的許多不同位置更是如此。另外,當服務器正在處理許多小的并發事務時, 日志文件的一個`fsync`足以提交許多事務。 WAL還提供了數據庫在線備份和時間點恢復的可能,就像[Section 24.3](#calibre_link-466) 里描述的那樣。通過歸檔的 WAL 文件,可以將數據庫恢復到 WAL 文件包含的任意時刻: 只需要簡單地安裝以前的數據庫物理備份,然后重放 WAL 到希望的時間點。另外, 物理備份還不必是數據庫狀態的一個即時快照(如果其制作花了較長時間的話), 因為 WAL 日志的重放將修復任何內部的不一致。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看