Sql-Server

在同一伺服器上複製 5TB SQL Server 數據庫的最快方法是什麼,而無需完全重新初始化數據庫以將其添加到 AG

  • April 8, 2021

我有一個託管 5TB 數據庫的 3 節點 Always On AG。由於業務需要,在每個月的第一天凌晨 12:01,我需要在附加上月名稱的第 3 個節點(副本)上創建該數據庫的副本。例如,在 4 月 1 日,我創建了一個名為“mydatabase_march2021”的數據庫,它是截至 4 月 1 日凌晨 12:01 的“mydatabase”的副本。

我目前的流程包括在凌晨 12:01 立即從第三個節點的 AG 中刪除數據庫,重命名它,然後開始將 5TB 數據庫備份和恢復到第三個節點並將其添加到 AG 的緩慢過程。有沒有其他方法可以做到這一點而不必完全重新初始化第三個節點上的數據庫?我需要在凌晨 5 點之前將此副本提供給業務使用者。

我已嘗試從 AG 中刪除數據庫、使 SQL 離線、複製數據庫文件,但無法附加這些文件並使數據庫保持恢復狀態(這是重新初始化所必需的)。

附加資訊:

Windows Server 2016 Standard

SQL Server 2012 SP4 Enterprise(將在明年某個時候升級到 SQL 2016 或 2019)

節點 1 位於數據中心 A

節點 2 和節點 3 位於數據中心 B

“我可以使用 tranlog 備份,然後將其滾動到凌晨 12:01”

去做。您可以還原最後一次完整備份,然後在當月第一天之前的幾天或幾小時內使用 NORECOVERY 應用日誌備份,然後使用STOPAT 和 RECOVERY 或 STANDBY應用最後一次日誌備份。

或者,您可以在每月第一天的午夜創建數據庫快照。這將避免在開始時複製所有 5TB,並且快照將僅儲存在一個月內更改的頁面。

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