設定 Azure VM 上的 SQL Server 記錄傳送
本文會教導您設定在 Azure 虛擬機器 (VM) 上兩部 SQL Server 之間的記錄傳送。
概觀
記錄傳送可讓您將主要伺服器上主要資料庫中的交易記錄備份,自動傳送到個別次要伺服器上的一或多個次要資料庫。 交易記錄備份會個別套用到每一個次要資料庫。 第三部選擇性的伺服器,稱為監視伺服器,負責記錄備份和還原作業的歷程記錄與狀態,如果這些作業未依排程進行,還可以選擇性地發出警示。
記錄傳送主要用於災害復原解決方案,而且可與其他高可用性和災害復原選項 (包括 AlwaysOn 可用性群組) 結合。
必要條件
若要在 Azure VM 上設定 SQL Server 的記錄傳送,您必須具備下列必要條件:
至少有兩部已加入網域的 Azure 虛擬機器,且 SQL Server 與用於交易記錄備份的 Azure 儲存體帳戶位於相同的資源群組中。 次要伺服器必須位於與主要 SQL Server 相同或更新版本的 SQL Server。
主要資料庫必須使用完整或大量記錄復原模式。 如果將主要資料庫切換到簡單復原模式,記錄傳送就會停止運作。
設定記錄傳送的帳戶必須是系統管理員固定伺服器角色的成員。
建立 Azure 檔案共用
來自主要伺服器的交易記錄備份會儲存在檔案共用中。 設定記錄傳送之前,您必須在主要和次要伺服器可以存取的 Azure 儲存體帳戶內建立 Azure 檔案共用。
若要在 Azure 入口網站中建立 Azure 檔案共用,請執行下列步驟:
前往 Azure 入口網站中的資源群組,然後選取您預計用於交易記錄備份的儲存體帳戶。
在 [資料儲存體] 底下,選取 [檔案共用],然後選擇 [+檔案共用] 以建立新的檔案共用。
在 [基本] 索引標籤上,提供檔案共用的名稱,例如記錄傳送。 您可以將 [層] 保留在已最佳化交易的預設值。
(選用) 在 [備份] 索引標籤上,使用核取方塊來啟用將檔案共用備份至 Azure 備份。
選取 [檢閱 + 建立] 以檢閱檔案共用設定,然後選取 [建立] 以建立新的檔案共用。
建立備份目錄
建立檔案共用之後,您應該建立下列兩個目錄:
- 要寫入記錄備份的主要目錄
- 要拷貝和還原記錄備份的次要目錄
若要建立目錄,請遵循下列步驟:
在 Azure 建立檔案共用之後,此入口網站會帶您回到 新 SMB 檔案的 [概觀] 頁面。
在 [瀏覽] 底下,選取 [+ 新增目錄]。 提供新目錄的名稱,例如記錄備份。 選取 [確定]。
重複上一個步驟以新增第二個目錄,例如還原備份。 選取 [確定]。
將 VM 連線至檔案共用
建立目錄之後,請將虛擬機器連線到檔案共用。
若要判斷連線詳細資料,請從檔案共用的 [瀏覽] 或 [概觀] 頁面選取 [連線],以開啟 [連線] 視窗。
[連線] 視窗會提供指令碼,以允許資源存取檔案共用。 或者,將磁碟機代號變更為將檔案共用裝載至虛擬機器。 本指南使用 Windows 虛擬機器的儲存體帳戶金鑰。
選取 [顯示指令碼] 以檢視指令碼、拷貝指令碼,然後在您打算設定記錄傳送的每個 SQL Server VM 上執行指令碼。
執行連線指令碼之後,您可以使用下列 PowerShell Cmdlet 來驗證與連接埠 445 的連線:
Test-NetConnection -ComputerName yourstorageaccount.file.core.windows.net -Port 445
如果連線測試成功,您會看到 TcpTestSucceeded : True
的輸出。
將檔案共用的存取權授與 SQL Server
在 SQL Server VM 成功連線到檔案共用之後,請使用來自連線指令碼的 URL、使用者名稱和密碼,在 SQL Server 中建立認證,以將檔案共用的存取權授與 SQL Server 服務帳戶。
若要建立認證,請啟用 xp_cmdshell
,然後使用其建立認證,然後再次停用 xp_cmdshell
。
若要將檔案共用的存取權授與 SQL Server 服務帳戶,請在您預計用於記錄傳送的每個 SQL Server 執行個體執行下列步驟:
使用屬於系統管理員角色的帳戶,連線至 SQL Server VM。
開始 SQL Server Management Studio (SSMS) 並連線至 SQL Server 執行個體。
開啟新的查詢視窗,然後執行下列 Transact-SQL 程式碼,其中包含從 Azure 入口網站取得的儲存體金鑰詳細資料:
EXEC sp_configure 'show advanced options', 1; RECONFIGURE; exec sp_configure 'xp_cmdshell', 1; RECONFIGURE; GO EXEC xp_cmdshell 'cmdkey /add:"yourstorageaccount.file.core.windows.net" /user:"localhost\yourstorageaccount" /pass:"<yourpasskey>"'; GO EXEC sp_configure 'xp_cmdshell', 0; RECONFIGURE; GO
執行命令之後,SSMS 會確認已成功新增認證:
設定記錄傳送
在 SQL Server 執行個體可以存取檔案共用之後,請使用 SQL Server Management Studio (SSMS) 來設定記錄傳送。
若要設定記錄傳送,請遵循下列步驟:
連線到主要 SQL Server 執行個體。
以滑鼠右鍵按一下在記錄傳送設定中要作為主要資料庫的資料庫,然後選取 [屬性]。
在 [選取頁面] 下,選取 [交易記錄傳送]。
勾選 [將此啟用為記錄傳送設定的主要資料庫] 旁的方塊。
在 [交易記錄備份] 下,選取 [備份設定]。
在 [到備份資料夾的網路路徑] 方塊中,輸入您針為交易記錄備份資料夾所建立之共用和目錄的網路路徑。
例如:
\\yourstorageaccount.file.core.windows.net\log-shipping\log-backups
設定 [指定刪除檔案的時限] 及 [如果未在此時間內進行備份,則發出警示] 參數,以滿足您的業務需求。
請注意 [備份作業] 之下 [排程] 方塊所列的備份排程。 如果您要自訂安裝的排程,則請選取 [排程],然後視需要調整 SQL Server Agent 排程。
SQL Server 支援備份壓縮。 在建立記錄傳送設定時,您可以透過選擇下列其中一個選項,來控制記錄備份的備份壓縮行為:[使用預設伺服器設定]、[壓縮備份],或 [不要壓縮備份]。 如需詳細資訊,請參閱 Log Shipping Transaction Log Backup Settings。
選取 [確定] 儲存您的設定。
在 [次要伺服器執行個體與資料庫] 下,選取 [新增]。
使用 [連接],連接到您要做為次要伺服器的 SQL Server 執行個體。
在 [次要資料庫] 方塊中,從清單中選擇資料庫,或輸入您要建立的資料庫名稱。
在 [初始化次要資料庫] 索引標籤上,選擇要用於初始化次要資料庫的選項。
注意
如果您選擇讓 SSMS 從資料庫備份初始化次要資料庫,次要資料庫的資料和記錄檔就會與
master
資料庫的資料和記錄檔放置於相同的位置。 這個位置可能會與主要資料庫之資料和記錄檔的位置不同。在 [拷貝檔案] 索引標籤的 [拷貝檔案目的地] 資料夾中,輸入您要拷貝交易記錄備份的資料夾路徑,例如您為檔案共用建立的 restore-backups 目錄:
\\yourstorageaccount.file.core.windows.net\log-shipping\restore-backups
- 請注意 [複製作業] 之下 [排程] 方塊中所列的複製排程。 如果您要自訂安裝的排程,請選取 [排程],然後視需要調整 SQL Server Agent 排程。 這個排程應接近備份排程。
在 [還原] 索引標籤上的 [還原備份時的資料庫狀態] 下,選擇 [不復原模式] 或 [待命模式] 選項。
重要
待命模式只是主要和次要伺服器版本相同時的選項。 次要伺服器的主要版本高於主要伺服器時,只允許 [無復原模式]。
如果您選擇 [待命模式] 選項,請選擇是否要在還原作業進行時,中斷使用者與次要資料庫的連接。
如果您要延遲次要伺服器上的還原處理序,請在 [延遲還原備份至少] 下選擇延遲時間。
在 [如果未在此時間內進行還原,則發出警示] 下選擇警示臨界值。
請注意 [還原作業] 下之 [排程] 方塊中所列的還原排程。 如果您要自訂安裝的排程,請選取 [排程],然後視需要調整 SQL Server Agent 排程。 這個排程應接近備份排程。
選取 [確定] 儲存您的設定。
(選用) 在 [監視伺服器執行個體] 下,選取 [使用監視伺服器執行個體] 核取方塊,再選取 [設定]。
重要
若要監視這個記錄傳送組態,您必須立即加入監視伺服器。 若要在日後新增監視伺服器,就必須移除這個記錄傳送設定,然後將其取代成包含監視伺服器的新設定。
使用 [連接],然後連接到要做為監視伺服器的 SQL Server 執行個體。
在 [監視器連接] 下,選擇備份、複製及還原作業用來連接到監視伺服器的連接方法。
在 [記錄保留] 下,選擇您要保留記錄傳送記錄的時間長度。
選取 [確定] 儲存您的設定。
在 [資料庫屬性] 對話方塊上,使用 [確定] 以開始設定程序。