

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

# 在 RDS Custom for Oracle 中將單一可用區域部署轉換為多可用區域部署
<a name="custom-oracle-multiaz-modify-single-to-multi"></a>

您可以將現有的多可用區域相容 RDS Custom for Oracle 執行個體從單一可用區域部署轉換為多可用區域部署。當您修改資料庫執行個體時，Amazon RDS 會執行多個動作：
+ 拍攝主要資料庫執行個體的快照。
+ 從快照為待命複本建立新磁碟區。這些磁碟區會在背景中初始化，並在資料完全初始化之後達到最大磁碟區效能。
+ 開啟主要和待命資料庫執行個體之間的同步區塊層級複本。

**重要**  
建議您避免在尖峰活動期間，將 RDS Custom for Oracle 資料庫執行個體從單一可用區域修改為生產資料庫執行個體上的多可用區域部署。

AWS 當您從單一可用區轉換為異地同步備份時， 會使用快照來建立待命執行個體，以避免停機時間，但在轉換為異地同步備份期間和之後，效能可能會受到影響。對於對寫入延遲敏感的工作負載而言，這個影響可能很重大。雖然此功能可以從快照中快速還原大量磁碟區，但由於是同步複寫，可能會導致 I/O 作業延遲。此延遲可能會影響您的資料庫效能。

## 設定先決條件，以使用 CloudFormation 將單一可用區修改為多可用區部署
<a name="custom-oracle-multiaz-modify-cf-prereqs"></a>

請依照 [步驟 3：擷取 RDS Custom for Oracle 的 CloudFormation 範本](custom-setup-orcl.md#custom-setup-orcl.cf.downloading) 再次設定您的 VPC 和 IAM 設定檔，以在 IAM 設定檔中新增 SQS VPC 端點和 SQS 許可。

## 設定先決條件，以手動將單一可用區修改為多可用區部署
<a name="custom-oracle-multiaz-modify-manual-prereqs"></a>

如果您選擇手動設定先決條件，請執行以下任務。

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台

1. 選擇**端點**。**Create Endpoint** (建立端點) 頁面隨即出現。

1. 在**服務類別**中，選擇​ **AWS 服務**。

1. 在**服務**中，搜尋 `SQS`。

1. 在 **VPC** 中，選擇部署 RDS Custom for Oracle 資料庫執行個體的 VPC。

1. 在**子網路**中，選擇部署 RDS Custom for Oracle 資料庫執行個體的子網路。

1. 在**安全群組**中，選擇部署 RDS Custom for Oracle 資料庫執行個體的安全群組。

1. 針對**政策**，選擇**自訂**。

1. 在自訂政策中，將 `AWS partition`、`Region`、`accountId` 和 `IAM-Instance-role` 取代為您自己的值。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Condition": {
                "StringLike": {
                    "aws:ResourceTag/AWSRDSCustom": "custom-oracle"
                }
            },
            "Action": [
                "SQS:SendMessage",
                "SQS:ReceiveMessage",
                "SQS:DeleteMessage",
                "SQS:GetQueueUrl"
            ],
            "Resource": "arn:aws:sqs:us-east-1:111122223333:do-not-delete-rds-custom-*",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/{IAM-Instance-role}"
            }
        }
    ]
}
```

------

以 Amazon SQS 存取權限更新**執行個體設定檔**。用您的數值取代 `AWS partition`、`Region` 和 `accountId`。

```
{
    "Sid": "13",
    "Effect": "Allow",
    "Action": [
        "SQS:SendMessage",
        "SQS:ReceiveMessage",
        "SQS:DeleteMessage",
        "SQS:GetQueueUrl"
    ],
    "Resource": [
        {
            "Fn::Sub": "arn:${AWS::Partition}:sqs:${AWS::Region}:${AWS::AccountId}:do-not-delete-rds-custom-*"
        }
    ],
    "Condition": {
        "StringLike": {
            "aws:ResourceTag/AWSRDSCustom": "custom-oracle"
        }
    }
}
```

更新 Amazon RDS 安全群組輸入和輸出規則，以允許連接埠 1120。
+ 在**安全群組**中，選擇部署 RDS Custom for Oracle 資料庫執行個體的群組。
+ 針對**輸入規則**，請建立**自訂 TCP** 規則，以允許來自來源群組的連接埠。
+ 針對**輸出規則**，請建立**自訂 TCP** 規則，以允許到目的地群組的連接埠。

## 使用 RDS 主控台 AWS CLI或 RDS API 修改
<a name="custom-oracle-multiaz-modify-console-cli-api"></a>

完成先決條件後，您可以使用 Amazon RDS 主控台 AWS CLI或 Amazon RDS API，將 RDS Custom for Oracle 資料庫執行個體從單一可用區修改為異地同步備份部署。

### 主控台
<a name="custom-oracle-multiaz-modify-console"></a>

**將現有 RDS Custom for Oracle 單一可用區域修改為多可用區域部署**

1. 登入 AWS 管理主控台，並在 https：//[https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/) 開啟 Amazon RDS 主控台。

1. 在 Amazon RDS 主控台，選擇 **Databases (資料庫)**。**Databases (資料庫)** 窗格隨即出現。

1. 選擇您想要修改的 RDS Custom for Oracle 資料庫執行個體。

1. 從**動作**中，選擇**轉換為多可用區部署**。

1. 在**確認**頁面上，選擇**立即套用**，來立即套用變更。選擇此選項並不會產生停機時間，但可能會對效能產生影響。或者，您也可以選擇在下個維護時段套用更新。如需詳細資訊，請參閱[使用排程修改設定](USER_ModifyInstance.ApplyImmediately.md)。

1. 在**確認**頁面上，選擇**轉換為多可用區**。

### AWS CLI
<a name="custom-oracle-multiaz-modify-cli"></a>

若要使用 轉換為多可用區域資料庫執行個體部署 AWS CLI，請呼叫 [modify-db-instance](https://docs.aws.amazon.com//cli/latest/reference/rds/modify-db-instance.html) 命令並設定 `--multi-az`選項。指定資料庫執行個體識別符，以及您要修改的其他選項值。如需每個選項的詳細資訊，請參閱[資料庫執行個體的設定](USER_ModifyInstance.Settings.md)。

**Example 範例**  
下列代碼包含 `--multi-az` 選項，以修改 `mycustomdbinstance`。使用 `--no-apply-immediately`，會在下一次維護時段期間由系統套用變更。使用 `--apply-immediately` 可立即套用變更。如需詳細資訊，請參閱[使用排程修改設定](USER_ModifyInstance.ApplyImmediately.md)。  
針對 Linux、macOS 或 Unix：  

```
aws rds modify-db-instance \
    --db-instance-identifier mycustomdbinstance \
    --multi-az \
    [--no-apply-immediately | --apply-immediately]
```
針對 Windows：  

```
aws rds modify-db-instance ^
    --db-instance-identifier mycustomdbinstance ^
    --multi-az ^
    [--no-apply-immediately | --apply-immediately]
```

### RDS API
<a name="custom-oracle-multiaz-modify-api"></a>

若要使用 Amazon RDS API 轉換為多個可用區資料庫執行個體部署，請呼叫 [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) 作業，並將 `MultiAZ` 參數設為 true。