備份/復原設備上低 splash 備份的原因

什麼是低水花備用方案?

在正常情況下,備份和災難復原備份/復原設備會先對資料庫執行耗時的初始完整擷取備份,之後的所有備份則會是速度更快的增量備份。增量備份會比較目前快照和前一個快照的點陣圖,並只套用增量變更。

低度備份是一種特殊類型的備份工作,會在先前的備份工作中發生某些系統錯誤,導致點陣圖圖片不可靠或無法讀取點陣圖時執行。在 Linux 環境中,讀取點陣圖的服務是 cbt_server,在 Windows 環境中則是 AAMService。

低濺射備份必須再次執行完整擷取,才能重新建立可靠的點陣圖,因此比在正常情況下執行的備份更耗時。接著,系統可以套用增量變更,而不必取代完整備份。

不會導致低水花備份的情況

  • 連接器升級
  • 平順重新啟動系統
  • 安全重新啟動 cbt_server 或 AAMService (假設服務在備份時仍在執行)
  • 未發生導致點陣圖不可靠的錯誤,因此容錯移轉。

點陣圖不可靠的原因

如果備份工作遭到中斷,就會產生不可靠的點陣圖,包括:

  • 主機未正常關機:
    • 非正常關機時,由於點陣圖不可靠,會導致低啟動畫面。包括拔除實體機器的電源,或任何其他未經正常關機程序就關閉 Windows 的方法,或藍色畫面錯誤。即使叢集中的某部機器發生藍色畫面錯誤,並觸發容錯移轉,也是如此,因為故障機器的點陣圖不可靠。
    • 自上次備份以來,叢集中託管資料庫的所有 Windows 伺服器都無法使用,且未執行備份和災難復原代理程式。我們會從上次備份後託管資料庫的每個叢集主機提取點陣圖,找出變更內容。如果沒有所有點陣圖,我們就必須執行低 splash 作業,以維護資料完整性。請注意,如果託管資料庫的叢集主機發生藍色畫面死機,備份時可能會有點陣圖,但仍不可靠,因此需要低影響復原。
  • 核心模組更新失敗
  • 使用者模式 Daemon 當機或重新啟動
  • 執行備份時發生指紋錯誤。(備份和災難復原會對每項備份工作執行「指紋檢查」,確認是否有錯誤)。
  • 在 OS 關機期間,如果儲存磁碟已滿,且系統無法將所有資料寫入 vault,則在 vaulting 期間會發生錯誤。
  • SAP HANA 節點容錯移轉,導致備份作業重新導向至其他節點。
  • 無法載入核心模組,因此備份作業在降級模式下執行。這通常是因為 OS 版本不受支援。
  • 如果 cbt_server 或 AAMService 在備份期間停止,就無法擷取點陣圖,備份工作會以低啟動畫面模式執行。如果 AAMService 停機時間不長,啟動 AAMService 後,點陣圖就能用於正常備份。
    • 如果 cbt_server 或 AAMService 停止的時間過長,導致驅動程式排入數 GB 的事件,則無法重新建立點陣圖,且備份會處於低啟動模式。所需時間取決於資料庫的磁碟 I/O 量。這通常需要 AAMService 停機數天。
  • 如果 cbt_server 或 AAMService 未正常關機,目前載入的點陣圖可能會變得不可靠。如果追蹤的檔案在過去 15 分鐘內有寫入,系統就會載入點陣圖,因此對於忙碌的資料庫,這通常會造成低 splash。
  • 如果包含追蹤檔案 (例如 SQL Server .mdf 檔案) 的磁碟區在主機上卸載後重新掛接,點陣圖就會變得不可靠,因為無法得知在卸載期間寫入檔案的內容。