如何:利用鏡像資料庫的最少停機時間,在系統上安裝 Service Pack

此主題描述如何在您安裝 Service Pack 和 Hotfix 時,將鏡像資料庫的停機時間減至最少。這個程序牽涉到循序升級參與資料庫鏡像的 SQL Server 2008 R2 執行個體。這種形式的升級稱為「輪流升級」,可將停機時間減少為只有單一容錯移轉。請注意,在高效能模式的工作階段中,如果鏡像伺服器與主體伺服器之間的地理位置遙遠,輪流升級可能不適合。

輪流升級是指由下列階段組成的多階段程序:

  • 保護您的資料。

  • 如果工作階段包含見證,建議您最好移除該見證。否則,當升級鏡像伺服器執行個體時,資料庫可用性會相依於仍然連接至主體伺服器執行個體的見證。當您移除見證之後,您可以在輪流升級期間的任何時候將它升級,避免發生資料庫停機的風險。

    [!附註]

    如需詳細資訊,請參閱<仲裁:見證如何影響資料庫可用性>。

  • 如果工作階段是在高效能模式中執行,請將作業模式變更為高安全性模式。

  • 升級與資料庫鏡像有關的每一個伺服器執行個體。輪流升級牽涉到將目前為鏡像伺服器的伺服器執行個體升級、手動容錯移轉它的每一個鏡像資料庫,以及將一開始為主體伺服器 (現在為新的鏡像伺服器) 的伺服器執行個體升級。在此時,您必須繼續鏡像作業。

    [!附註]

    在開始輪流升級之前,我們建議您至少在一個鏡像工作階段執行手動容錯移轉練習。

  • 在必要時還原成高效能模式。

  • 在必要時讓見證回到鏡像工作階段。

這裡將說明這些階段的程序。

重要事項重要事項

伺服器執行個體可能在並行鏡像工作階段中執行不同的鏡像角色 (主體伺服器、鏡像伺服器或見證)。在此情況下,您必須依照狀況來配合基本輪流升級程序。如需詳細資訊,請參閱<資料庫鏡像工作階段>。

在升級之前保護資料 (最佳作法)

  1. 在每一個主體資料庫上執行完整資料庫備份。

    備份資料庫

  2. 在每一個主體資料庫上執行 DBCC CHECKDB 命令。

從工作階段中移除見證

將工作階段從高效能模式變更為高安全性模式

執行輪流升級

  1. 若要讓停機時間減至最少,我們建議您採取以下作法:在所有鏡像工作階段中更新目前為鏡像伺服器的任何鏡像夥伴伺服器,藉以開始輪流升級。您在此時可能必須更新多個伺服器執行個體。

    [!附註]

    您可以在輪流升級程序的任何時間升級見證。例如,如果伺服器執行個體在工作階段 1 為鏡像伺服器,而在工作階段 2 為見證,您可以立刻升級此伺服器執行個體。

    要升級的伺服器執行個體首先取決於鏡像工作階段的目前組態,如下面所述:

    • 如果有任何伺服器執行個體在所有鏡像工作階段中已經是鏡像伺服器,請在該伺服器執行個體上安裝 Service Pack 或 Hotfix。

    • 如果所有的伺服器執行個體目前在任何鏡像工作階段中為主體伺服器,請先選取一個伺服器執行個體來升級。然後,手動容錯移轉它的每一個主體資料庫,並透過安裝 Service Pack 或 Hotfix 來升級該伺服器執行個體。

    在升級之後,伺服器執行個體會自動重新加入它的每一個鏡像工作階段。

    執行手動容錯移轉

    如需有關手動容錯移轉如何運作的詳細資訊,請參閱<手動容錯移轉>。

  2. 請針對剛剛升級鏡像伺服器執行個體的每一個鏡像工作階段,等候此工作階段同步處理。然後,連接到主體伺服器執行個體,並手動容錯移轉工作階段。在容錯移轉時,升級的伺服器執行個體會變成該工作階段的主體伺服器,而之前的主體伺服器會變成鏡像伺服器。

    這個步驟的目標是要讓另一個伺服器執行個體在當做夥伴伺服器的每一個鏡像工作階段中變成鏡像伺服器。

  3. 在您容錯移轉之後,我們建議您在主體資料庫上執行 DBCC CHECKDB 命令。

  4. 如果有任何伺服器執行個體目前在當做夥伴伺服器的所有鏡像工作階段中為鏡像伺服器,請在該伺服器執行個體上安裝 Service Pack 或 Hotfix。您在此時可能必須更新多部伺服器。

    重要事項重要事項

    在複雜鏡像組態中,某些伺服器執行個體在一或多個鏡像工作階段中可能仍然是原始的主體伺服器。請針對這些伺服器執行個體重複步驟 2–4,直到相關的所有執行個體都已升級為止。

  5. 繼續鏡像工作階段。

    [!附註]

    要等到升級見證之後,自動容錯移轉才能運作。

  6. 如果有任何其餘的伺服器執行個體在所有鏡像工作階段中為見證,請在該伺服器執行個體上安裝 Service Pack 或 Hotfix。在升級之後,見證會重新加入鏡像工作階段,而自動容錯移轉可再度運作。您在此時可能必須更新多部伺服器。

讓工作階段回到高效能模式

  • 您可以選擇使用下列其中一個方法來回到高效能模式:

    • 在 SQL Server Management Studio 中:使用 [資料庫屬性] 對話方塊的鏡像頁面,將 [作業模式] 選項變更為 [高效能 (非同步)]

    • 在 Transact-SQL 中:使用 ALTER DATABASE 將交易安全性設定為 OFF。

讓見證回到鏡像工作階段