Sql-Server

將數據發送到多個位置的高可用性解決方案

  • February 17, 2016

我繼承了一個非常有趣的環境,我的任務是盡快找到並實施高可用性/災難恢復解決方案。

簡單來說我們的環境是這樣的:

伺服器 1 - 生產數據庫(200GB)

伺服器 2、3、4 - 需要每天恢復生產數據庫的副本(必須每天使用生產數據更新一次)

Server 5 - DR server(數據失去盡量少,不超過5分鐘)

我們用:

  • 所有伺服器上的 Windows 2012 R2
  • SQL Server 2012 企業版
  • 如果有必要,我們很樂意升級軟體和硬體(在合理範圍內)。

要求:

我們需要解決方案:

  • 需要盡可能少的維護工作(只有 1 個超級繁忙的 DBA 可用)
  • 將允許我們繼續生成完整、差異和事務備份(我們需要它們供審計員使用)

我已經考慮過的選項:

我想了想,我排除了以下方法:

  1. 日誌傳送,因為我們需要能夠向審計員顯示日誌備份並將它們儲存多年。如果我錯了,請糾正我,但日誌傳送不會讓我們創建單獨的日誌備份。

  2. 鏡像僅在 2 台伺服器(主伺服器和鏡像伺服器)之間起作用,因此它不能解決必須每天刷新的額外伺服器的問題。也許我只能在一台伺服器上使用它,而在其他 3 台伺服器上使用它。

3)複製主要用於單個表和函式,所以恐怕不可能將慢速伺服器上的一個數據庫複製到其他 4 個伺服器。

  1. 我從未使用過其他 HA 技術,例如 AlwaysOn 或集群對我來說是一個很大的未知數。只要有人指出我正確的方向,我很高興學習。

如果您能建議可在所述環境中實施的 HA/DR 解決方案,我將不勝感激。

根據您的專業水平,我建議您 - LogshippingAlwaysON AG

  1. 日誌傳送,因為我們需要能夠向審計員顯示日誌備份並將它們儲存多年。如果我錯了,請糾正我,但日誌傳送不會讓我們創建單獨的日誌備份。

日誌運輸。它允許您將數據庫記錄到任意數量的輔助節點。

您可以在輔助節點上選擇備用選項,這將允許您在未恢復日誌時讀取數據。將其視為僅報告。

您可以進行不會破壞您的日誌鏈的 COPY_ONLY 日誌備份(或將使用者限制為 COPY ONLY 備份),並且您可以存檔您的日誌備份(取決於您設置的頻率) - 以便您的審計員可以儲存它們。只是不要刪除它們或在日誌傳送的清理工作中有更長的保留期。

  1. 我從未使用過其他 HA 技術,例如 AlwaysOn 或集群對我來說是一個很大的未知數。只要有人指出我正確的方向,我很高興學習。

您可以實施 AlwaysON 可用性組並愉快地進行完整、差異和 T-Log 備份。

重要的是你有一條學習曲線。所有伺服器都應該是同一個 Windows 集群的一部分,存在 DNS 依賴關係,您的應用程序應該能夠使用新的提供程序和連接字元串等。由於您使用的是企業版,因此您可以嘗試作為證明的概念,一旦你有信心,你可以從 logshipping 過渡到 AlwaysON。

注意:我們目前正在從 Logshipping 過渡到 AlwaysON,因為我們在世界不同大陸託管了 1000 多個數據庫的龐大環境。

一些參考資料可幫助您開始 ALwaysON 部分:

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