Sql-Server

備份文件在 SQL Server 2016 Always On Cluster 上快速增長

  • April 23, 2020

我有一個兩節點 SQL Server 2016 Always On 集群。我還有一項工作,每 3 分鐘更新一個表中的大約 200 條記錄。即使沒有更新,它也會將 TimestampDt 欄位更改為目前時間。

以前,我的備份文件以每天 10-20 MB 的速度增長。但是,現在我開始每 3 分鐘更新一次 TimestampDt 欄位(這是最近的更改),我的備份文件以每天 200 MB 的大小增長。

我認為備份包括整個事務日誌。

這是備份 SQL 查詢:

SET @BackupUrl = CONCAT('https://backup.blob.core.windows.net/databasebackup/dbname-',GETDATE(),'.bak');
BACKUP DATABASE dbname
  TO URL = @BackupUrl
  ;

這裡推薦的方法是什麼?我應該在備份時以某種方式清除事務日誌嗎?如果是這樣,我怎樣才能在 Always On 可用性組集群環境中安全地做到這一點?

任何幫助將不勝感激。

當數據庫在FULL恢復模式下執行時(您的恢復模式就是這樣,因為這是 AG 的要求),必須定期進行事務日誌備份。如果不這樣做,日誌將增長,直到達到最大日誌文件大小或儲存空間不足而停止。

您詢問:

我應該在備份時以某種方式清除事務日誌嗎?

僅當您不關心時間點恢復時,如果您每 3 分鐘更新一次記錄,您可能應該這樣做。

推薦的方法是定期進行完整事務日誌備份,這將使 TLog 保持在合理的大小(並且可能比目前小很多,因此在某些時候您可能需要調整它的大小) .

啟動和執行它的最簡單方法是安裝Ola Hallengren 的維護解決方案,並讓它創建代理作業來執行這些備份。這是完全免費的,全世界數以萬計的 DBA 都在使用它。它也是 AG 感知的。安排您的完整和 TLog 備份作業按照滿足您的恢復點目標 (RPO) 要求的時間表執行;在我的環境中,每天進行一次完整備份,每 15 分鐘備份一次 TLog。

引用自:https://dba.stackexchange.com/questions/265638