自訂 RDS Custom 環境 - Amazon Relational Database Service

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

自訂 RDS Custom 環境

RDS Custom for Oracle 包含內建功能,可讓您自訂資料庫執行個體環境,而無需暫停自動化。例如,您可以使用 RDS API 自訂環境,如下所示:

  • 建立並還原資料庫快照以建立複製環境。

  • 建立僅供讀取複本。

  • 修改儲存體設定。

  • 變更 CEV 以套用版本更新

對於某些自訂,例如變更字元集,您無法使用 RDS API。在這些情況下,您需要以根使用者身分存取 Amazon EC2 執行個體,或以 SYSDBA 身分登入 Oracle 資料庫,才能手動變更環境。

若要手動自訂執行個體,您必須暫停並繼續 RDS Custom 自動化。此暫停可確保您的自訂不會干擾 RDS Custom 自動化。如此一來,您就可以避免中斷支援周邊,這會將執行個體置於 unsupported-configuration 狀態,直到您修正了基本問題為止。當您修改 RDS Custom for Oracle 資料庫執行個體時,暫停和繼續是唯一支援的自動化任務。

自訂 RDS Custom 環境的一般步驟

若要自訂 RDS Custom 資料庫執行個體,請完成下列步驟:

  1. 使用主控台或 CLI 在指定期間暫停 RDS Custom 自動化。

  2. 識別基礎 Amazon EC2 執行個體。

  3. 使用 SSH 金鑰或 AWS Systems Manager 連線至基礎 Amazon EC2 執行個體。

  4. 在資料庫或作業系統層驗證您目前的組態設定。

    您可以透過比較初始組態與變更的組態來驗證您的變更。根據自訂類型,使用作業系統工具或資料庫查詢。

  5. 視需要自訂您的 RDS Custom for Oracle 資料庫執行個體。

  6. 如有需要,重新啟動您的執行個體或資料庫。

    注意

    在內部部署 Oracle CDB 中,您可以使用內建命令或在啟動觸發條件之後,為 PDB 保留指定的開啟模式。當 CDB 重新啟動時,此機制會將 PDB 帶至指定的狀態。開啟您的 CDB 時,RDS Custom 自動化會捨棄任何使用者指定的保留狀態,並嘗試開啟所有 PDB。如果 RDS Custom 無法開啟所有 PDB,則會發出下列事件:The following PDBs failed to open: list-of-PDBs

  7. 驗證新的組態設定,方法是將這些設定與先前的設定進行比較。

  8. 採取下列其中一種方式繼續 RDS Custom 自動化:

    • 手動繼續自動化。

    • 等待暫停期間結束。在此情況下,RDS Custom 會自動繼續監控和執行個體復原。

  9. 驗證 RDS Custom 自動化架構

    如果您已正確地遵循上述步驟,RDS Custom 會啟動自動備份。主控台中的執行個體狀態會顯示可用

如需最佳實務和逐步指示,請參閱 AWS 部落格文章:對 Amazon RDS Custom for Oracle 執行個體進行組態變更:第 1 部分重新建立 Amazon RDS Custom for Oracle 資料庫:第 2 部分

暫停和繼續 RDS Custom 資料庫執行個體

您可以使用主控台或 CLI,暫停和繼續資料庫執行個體的自動化。

若要暫停或繼續 RDS Custom 自動化
  1. 登入 AWS 管理主控台,開啟位於 https://console.aws.amazon.com/rds/ 的 Amazon RDS 主控台。

  2. 在導覽窗格中選擇 Databases (資料庫),然後選擇您要修改的 RDS Custom 資料庫執行個體。

  3. 選擇 Modify (修改)Modify DB instance (修改資料庫執行個體) 頁面隨即出現。

  4. 針對 RDS Custom automation mode (RDS Custom 自動化模式),選擇下列其中一個選項:

    • Paused (暫停) 會暫停 RDS Custom 資料庫執行個體的監控和執行個體復原。輸入您想要的 Automation mode duration (自動化模式持續時間) 的暫停持續時間 (以分鐘為單位)。最小值為 60 分鐘 (預設值)。最大值為 1,440 分鐘。

    • Full automation (全自動化) 會繼續自動化。

  5. 選擇 Continue (繼續) 以檢查修改的摘要。

    訊息隨即顯示,指出 RDS Custom 將會立即套用變更。

  6. 如果您的變更正確,請選擇 Modify DB instance (修改資料庫執行個體)。或者,選擇 Back (上一步) 以編輯變更,或是選擇 Cancel (取消) 以取消變更。

    在 RDS 主控台上,修改的詳細資訊即會出現。如果您暫停了自動化,您的 RDS Custom 資料庫執行個體的 Status (狀態) 會指出 Automation paused (自動化已暫停)

  7. (選用) 在導覽窗格中,選擇 Databases (資料庫),然後再執行 RDS Custom 資料庫執行個體。

    Summary (摘要) 窗格中,RDS Custom automation mode (RDS Custom 自動化模式) 會指出自動化狀態。如果暫停自動化,則值為 Paused (暫停)。自動化會在 num 分鐘內繼續

若要暫停或繼續 RDS Custom 自動化,請使用 modify-db-instance AWS CLI 命令。使用所需的參數 --db-instance-identifier 識別資料庫執行個體。使用下列參數控制自動化模式:

  • --automation-mode 會指定資料庫執行個體的暫停狀態。有效值為 all-paused (會暫停自動化) 以及 full (會繼續自動化)。

  • --resume-full-automation-mode-minutes 會指定暫停的持續時間。預設值為 60 分鐘。

注意

無論您指定 --no-apply-immediately--apply-immediately,RDS Custom 會盡快以非同步的方式套用修改。

在命令回應中,ResumeFullAutomationModeTime 會以 UTC 時間戳記的形式表示繼續時間。當自動化模式為 all-paused 時,您可以使用 modify-db-instance 來繼續自動化模式或延長暫停時間。不支援其他 modify-db-instance 加密選項。

下列範例會暫停 my-custom-instance 的自動化 90 分鐘。

在 Linux、macOS 或 Unix 中:

aws rds modify-db-instance \ --db-instance-identifier my-custom-instance \ --automation-mode all-paused \ --resume-full-automation-mode-minutes 90

在 Windows 中:

aws rds modify-db-instance ^ --db-instance-identifier my-custom-instance ^ --automation-mode all-paused ^ --resume-full-automation-mode-minutes 90

下列範例會將暫停持續時間延長額外 30 分鐘。30 分鐘會新增至 ResumeFullAutomationModeTime 中顯示的原始時間。

在 Linux、macOS 或 Unix 中:

aws rds modify-db-instance \ --db-instance-identifier my-custom-instance \ --automation-mode all-paused \ --resume-full-automation-mode-minutes 30

在 Windows 中:

aws rds modify-db-instance ^ --db-instance-identifier my-custom-instance ^ --automation-mode all-paused ^ --resume-full-automation-mode-minutes 30

下列範例會繼續 my-custom-instance 的全自動化。

在 Linux、macOS 或 Unix 中:

aws rds modify-db-instance \ --db-instance-identifier my-custom-instance \ --automation-mode full \

在 Windows 中:

aws rds modify-db-instance ^ --db-instance-identifier my-custom-instance ^ --automation-mode full

在下面的部分範例輸出中,待定 AutomationMode 值為 full

{ "DBInstance": { "PubliclyAccessible": true, "MasterUsername": "admin", "MonitoringInterval": 0, "LicenseModel": "bring-your-own-license", "VpcSecurityGroups": [ { "Status": "active", "VpcSecurityGroupId": "0123456789abcdefg" } ], "InstanceCreateTime": "2020-11-07T19:50:06.193Z", "CopyTagsToSnapshot": false, "OptionGroupMemberships": [ { "Status": "in-sync", "OptionGroupName": "default:custom-oracle-ee-19" } ], "PendingModifiedValues": { "AutomationMode": "full" }, "Engine": "custom-oracle-ee", "MultiAZ": false, "DBSecurityGroups": [], "DBParameterGroups": [ { "DBParameterGroupName": "default.custom-oracle-ee-19", "ParameterApplyStatus": "in-sync" } ], ... "ReadReplicaDBInstanceIdentifiers": [], "AllocatedStorage": 250, "DBInstanceArn": "arn:aws:rds:us-west-2:012345678912:db:my-custom-instance", "BackupRetentionPeriod": 3, "DBName": "ORCL", "PreferredMaintenanceWindow": "fri:10:56-fri:11:26", "Endpoint": { "HostedZoneId": "ABCDEFGHIJKLMNO", "Port": 8200, "Address": "my-custom-instance.abcdefghijk.us-west-2.rds.amazonaws.com" }, "DBInstanceStatus": "automation-paused", "IAMDatabaseAuthenticationEnabled": false, "AutomationMode": "all-paused", "EngineVersion": "19.my_cev1", "DeletionProtection": false, "AvailabilityZone": "us-west-2a", "DomainMemberships": [], "StorageType": "gp2", "DbiResourceId": "db-ABCDEFGHIJKLMNOPQRSTUVW", "ResumeFullAutomationModeTime": "2020-11-07T20:56:50.565Z", "KmsKeyId": "arn:aws:kms:us-west-2:012345678912:key/aa111a11-111a-11a1-1a11-1111a11a1a1a", "StorageEncrypted": false, "AssociatedRoles": [], "DBInstanceClass": "db.m5.xlarge", "DbInstancePort": 0, "DBInstanceIdentifier": "my-custom-instance", "TagList": [] }