

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon RDS for Microsoft SQL Server 的異地同步備份部署
<a name="USER_SQLServerMultiAZ"></a>

「異地同步備份部署」可提高資料庫執行個體的可用性、資料耐用性和容錯能力。在進行已規劃的資料庫維護或發生意外的服務中斷時，Amazon RDS 會自動容錯移轉到最新的次要資料庫執行個體。此功能可讓資料庫操作迅速恢復，而不需要手動介入。主要和待命執行個體使用相同的端點，而此端點的實體網路地址在容錯移轉過程中會轉移到次要複本。當容錯移轉發生時，您不必重新設定應用程式。

Amazon RDS 使用 SQL Server 資料庫鏡像 (DBM)、 Always On 可用性群組 (AGs異地同步備份部署。Amazon RDS 會監控和維護異地同步備份部署的運作狀態。如果發生問題，RDS 會自動修復運作不良的資料庫執行個體、重新建立同步處理，以及啟動容錯移轉。只有當待命和主要執行個體完全同步時，容錯移轉才會發生。您什麼都不必管理。

當您設定 SQL Server Multi-AZ 時，RDS 會自動將執行個體上的所有資料庫設定為使用 DBM、AGs或區塊層級複寫。當您設定 DBM 或 AGs 時，Amazon RDS 會為您處理主要、見證和次要資料庫執行個體。對於區塊層級複寫，RDS 會處理主要和次要資料庫執行個體。由於組態是自動的，RDS 會根據您部署的 SQL Server 版本來選取 DBM、AGs 或區塊層級複寫。

Amazon RDS 支援下列 SQL Server 版本和版次使用異地同步備份搭配 Always On AG：
+ SQL Server 2022：
  + 標準版本
  + 企業版本
+ SQL Server 2019：
  + Standard Edition 15.00.4073.23 版和更高版本
  + 企業版本
+ SQL Server 2017：
  + Standard Edition 14.00.3401.7 版和更高版本
  + Enterprise Edition 14.00.3049.1 版和更高版本
+ SQL Server 2016：企業版 13.00.5216.0 版和更新版本

Amazon RDS 支援下列 SQL Server 版本使用異地同步備份搭配 DBM，但先前提到的版本除外：
+ SQL Server 2019：標準版 15.00.4043.16 版
+ SQL Server 2017︰Standard 和 Enterprise Edition
+ SQL Server 2016︰Standard 和 Enterprise Edition 

Amazon RDS 支援具有 SQL Server 2022 Web Edition 16.00.4215.2 及更高版本的區塊層級複寫的異地同步備份。

**注意**  
只有使用 16.00.4215.2 或更高版本建立的新資料庫執行個體支援具有區塊層級複寫的異地同步備份部署。下列限制適用於現有的 SQL Server 2022 Web Edition 執行個體：  
對於 16.00.4215.2 版上的現有執行個體，您必須將快照還原至具有相同或更高次要版本的新執行個體，才能啟用區塊層級複寫。
具有較舊次要版本的 SQL Server 2022 Web 執行個體可以升級至次要版本 16.00.4215.2 或更新版本，以啟用區塊層級複寫。

您可以使用下列 SQL 查詢來判斷 SQL Server 資料庫執行個體是單一可用區、採用 DBM 的多可用區域，或是採用 Always On AG 的多可用區域。此查詢不適用於 SQL Server Web Edition 上的異地同步備份部署。

```
SELECT CASE WHEN dm.mirroring_state_desc IS NOT NULL THEN 'Multi-AZ (Mirroring)'
    WHEN dhdrs.group_database_id IS NOT NULL THEN 'Multi-AZ (AlwaysOn)'
    ELSE 'Single-AZ'
    END 'high_availability'
FROM sys.databases sd
LEFT JOIN sys.database_mirroring dm ON sd.database_id = dm.database_id
LEFT JOIN sys.dm_hadr_database_replica_states dhdrs ON sd.database_id = dhdrs.database_id AND dhdrs.is_local = 1
WHERE DB_NAME(sd.database_id) = 'rdsadmin';
```

輸出看起來會與以下內容相似：

```
high_availability
Multi-AZ (AlwaysOn)
```

## 將多可用區域新增至 Microsoft SQL Server 資料庫執行個體
<a name="USER_SQLServerMultiAZ.Adding"></a>

當您使用 建立新的 SQL Server 資料庫執行個體時 AWS 管理主控台，您可以新增具有資料庫鏡像 (DBM)、 Always On AGs或區塊層級複寫的異地同步備份。您可以透過選擇**異地同步備份部署**中的**是 （鏡像/永遠開啟/區塊層級複寫） **來執行此操作。如需詳細資訊，請參閱[建立 Amazon RDS 資料庫執行個體](USER_CreateDBInstance.md)。

當您使用主控台修改現有的 SQL Server 資料庫執行個體時，您可以在**修改資料庫執行個體**頁面上從異地同步備份部署中選擇是 （鏡射/永遠開啟/區塊層級複寫），以 DBM、AGs 或區塊層級複寫新增異地同步備份。 **** ****如需詳細資訊，請參閱[修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

**注意**  
如果您的資料庫執行個體正在執行資料庫鏡像 (DBM) —並非 Always On 可用性群組 (AG)，則—可能需要先停用記憶體內最佳化，再新增異地同步備份。如果您的資料庫執行個體執行 SQL Server 2016 或 2017 Enterprise Edition，並啟用記憶體內最佳化，請在新增多可用區域之前停用 DBM 的記憶體內最佳化。  
如果您的資料庫執行個體正在執行 SQL Server Web Edition AGs 或區塊層級複寫，則不需要此步驟。

## 從 Microsoft SQL Server 資料庫執行個體移除多可用區域
<a name="USER_SQLServerMultiAZ.Removing"></a>

當您使用 修改現有的 SQL Server 資料庫執行個體時 AWS 管理主控台，您可以使用 DBM、AGs或區塊層級複寫來移除異地同步備份。您可以在**修改資料庫執行個體**頁面上，從**異地同步備份部署**中選擇**否 （鏡射/永遠開啟/區塊層級複寫）**。如需詳細資訊，請參閱[修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。