使用 RDS Custom for Oracle 的 Oracle 複本 - Amazon Relational Database Service

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

使用 RDS Custom for Oracle 的 Oracle 複本

您可以為執行 Oracle 企業版的 Oracle 資料庫執行個體建立 RDS 自訂 Oracle 複本。同時支援容器資料庫 (CDB) 和非 CDB。標準版 2 不支援 Oracle 資料保全。

建立 RDS Custom for Oracle 複本與建立 RDS for Oracle 複本過程類似,但有一些重要差異。如需建立和管理 Oracle 複本的一般資訊,請參閱 使用資料庫執行個體僅供讀取複本使用適用於 Amazon RDS for Oracel 的僅供讀取複本

RDS Custom for Oracle 複本的概觀

RDS Custom for Oracle 複本的架構是 RDS for Oracle 複本的類比。主要資料庫執行個體會以非同步方式複寫到一或多個 Oracle 複本。

RDS Custom for Oracle 支援 Oracle 複本

複本數上限

與 RDS for Oracle 相同,您的 RDS Custom for Oracle 主要資料庫執行個體最多可以建立 5 個受管的 Oracle 複本。您也可以自行建立手動設定 (外部) 的 Oracle 複本。外部複本不會計入您的資料庫執行個體限制。外部複本也屬於 RDS Custom 支援範圍之外。如需支援周邊的詳細資訊,請參閱 RDS Custom 支援周邊

複本命名慣例

Oracle 複本名稱是以資料庫唯一名稱為基礎。格式為 DB_UNIQUE_NAME_X,按附加字母順序排序。例如,如果您的資料庫唯一名稱為 ORCL,則前兩個複本會命名為 ORCL_AORCL_B。前六個字母 A—F 會保留給 RDS Custom。RDS Custom 會從主要資料庫執行個體將資料庫參數複製到複本。如需詳細資訊,請參閱 Oracle 文件中的 DB_UNIQUE_NAME

複本備份保留

根據預設,RDS Custom Oracle 複本會使用與主要資料庫執行個體相同的備份保留期間。您可以將備份保留期修改為 1 - 35 天。RDS 自訂支援備份、還原和 point-in-time 復原 (PITR)。如需備份和還原 RDS Custom 資料庫執行個體的詳細資訊,請參閱 備份與還原 Amazon RDS Custom for Oracle DB 資料庫執行個體

注意

建立 Oracle 複本時,RDS Custom 會暫時暫停重做日誌的清理。如此一來,RDS Custom 可確保新的 Oracle 複本可供使用之後,將這些日誌套用至新的 Oracle 複本。

複本提升

您可以使用主控台、promote-read-replica AWS CLI 命令或 PromoteReadReplica API,在 RDS 自訂適用於 Oracle 中升級受管理的 Oracle 複本。如果您刪除主要資料庫執行個體,且所有複本都正常運作,則 RDS Custom for Oracle 會自動將受管複本提升為獨立執行個體。如果複本已暫停自動提升或位於支援範圍以外,您必須先修正複本,RDS Custom 才可以自動提升複本。您只能手動提升外部 Oracle 複本。

RDS Custom for Oracle 複本的指南和限制

建立 RDS Custom for Oracle 複本時,並非所有 RDS Oracle 複本選項都支援。

RDS Custom for Oracle 複本的一般指南

使用 RDS Custom for Oracle 的時候,請遵循下列指示:

  • 您只能在 Oracle 企業版中使用 RDS 自訂進行 Oracle 複寫。不支援標準版 2。

  • 請不要修改 RDS_DATAGUARD 使用者。此使用者是為 RDS Custom for Oracle 自動化保留的。修改此使用者可能會導致意外結果,例如,無法為您的 RDS Custom for Oracle 資料庫執行個體建立 Oracle 複本。

  • 請勿變更複本使用者密碼。管理 RDS Custom 主機上的 Oracle Data Guard 組態時會需要該密碼。如果您變更密碼,RDS Custom for Oracle 可能會將 Oracle 複本置於支援範圍以外。如需詳細資訊,請參閱 RDS Custom 支援周邊

    密碼儲存在中 AWS Secrets Manager,並以資料庫資源 ID 標記。每個 Oracel 複本在 Secrets Manager 中都有自己的秘密。秘密的格式如下。

    do-not-delete-rds-custom-db-DB_resource_id-6-digit_UUID-dg
  • 請勿變更主要資料庫執行個體的 DB_UNIQUE_NAME。變更名稱會導致任何還原操作停滯。

  • 請勿在 RDS Custom CDB 的 CREATE PLUGGABLE DATABASE 命令中指定子句 STANDBYS=NONE。這樣一來,如果發生容錯移轉,待命 CDB 會包含所有 PDB。

RDS Custom for Oracle 複本的一般限制

RDS Custom for Oracle 複本具有下列限制:

  • 您僅能在唯讀模式下建立 RDS Custom for Oracle 複本。不過,您可以手動將掛載複本的模式變更為唯讀,再從唯讀變更為掛載。如需詳細資訊,請參閱 create-db-instance-read-replica AWS CLI 命令的文件。

  • 您無法建立跨區域 RDS Custom for Oracle 複本。

  • 您無法變更 Oracle Data Gard CommunicationTimeout 值的參數。此參數針對 Oracle 資料庫執行個體設定為 15 秒。

RDS Custom for Oracle 複本的網路需求和限制

確定您的網路組態支援 RDS Custom for Oracle 複本。考慮下列各項:

  • 請務必針對主要資料庫執行個體和所有複本,對於虛擬私有雲端 (VPC) 內的輸入和輸出通訊啟用連接埠 1140。這對於僅供讀取複本之間的 Oracle Data Guard 通訊而言是必要的。

  • RDS Custom for Oracle 會於建立 Oracle 複本時驗證網路。如果主要資料庫執行個體和新的複本無法透過網路連線,則 RDS Custom for Oracle 不會建立複本,並將其置於 INCOMPATIBLE_NETWORK 狀態。

  • 對於外部 Oracle 複本 (例如您在 Amazon EC2 或內部部署建立的複本),請針對 Oracle Data Guard 複寫使用另一個連接埠和接聽程式。嘗試使用連接埠 1140 可能會導致與 RDS Custom 自動化發生衝突。

  • /rdsdbdata/config/tnsnames.ora 檔案包含對應至接聽程式通訊協定位址的網路服務名稱。請注意以下要求和建議:

    • 在處理 Oracle 複本操作時,tnsnames.ora 中字首為 rds_custom_ 的項目是為 RDS Custom 保留的。

      tnsnames.ora 中建立手動項目時,不使用此字首。

    • 在某些情況下,您可能想要手動切換或容錯移轉,或使用容錯移轉技術,例如快速啟動容錯移轉 (FSFO)。若是如此,請確定手動將 tnsnames.ora 項目從主要資料庫執行個體同步到所有待命執行個體。此建議適用於由 RDS Custom 管理的 Oracle 複本和外部 Oracle 複本。

      RDS Custom 自動化只會在主要資料庫執行個體上更新 tnsnames.ora 項目。同時務必在新增或移除 Oracle 複本時同步。

      如果您未同步 tnsnames.ora 檔案並手動切換或容錯移轉,則主要資料庫執行個體上的 Oracle Data Guard 可能無法與 Oracle 複本通訊。

RDS Custom for Oracle 的外部複本限制

RDS Custom for Oracle 外部複本 (包含內部部署複本) 具有下列限制:

  • RDS Custom for Oracle 不會對外部 Oracle 複本在手動容錯移轉 (例如 FSFO) 時偵測執行個體角色變更。

    RDS Custom for Oracle 不會偵測受管複本的變更。角色變更會記錄在事件日誌中。您也可以使用describe-db-instances AWS CLI 指令查看新狀態。

  • RDS Custom for Oracle 不會偵測外部 Oracle 複本的高複寫延遲。

    RDS Custom for Oracle 不會偵測受管複本的延遲。高複寫延遲會產生 Replication has stopped 事件。您也可以使用describe-db-instances AWS CLI 命令查看複製狀態,但可能會有延遲更新。

  • 若您刪除主要資料庫執行個體,RDS Custom for Oracle 不會自動提升外部 Oracle 複本。

    自動提升功能僅適用於受管的 Oracle 複本。如需手動提升僅 Oracle 複本的相關資訊,請參閱白皮書使用 Amazon RDS Custom for Oracle 上的 Data Guard 來啟用高可用性

RDS Custom for Oracle 的複本提升限制

RDS Custom for Oracle 受管 Oracle 複本的升級與 RDS 受管複本的升級相同,但有一些差異。請留意 RDS Custom for Oracle 複本的下列限制:

  • RDS Custom for Oracle 正在進行備份時,您無法提升複本。

  • 提升 Oracle 複本時,您無法將備份保留期變更為 0

  • 若複本的運作狀態不佳,您便不能提升該複本。

    如果您在主要資料庫執行個體上發出問題 delete-db-instance,RDS Custom for Oracle 會驗證每個受管的 Oracle 複本是否正常運作且可用於升級。複本可能會由於自動化已暫停或位於支援範圍之外而不符合升級。在這種情況下,RDS Custom for Oracle 會發佈事件說明問題,以便您可以手動修復 Oracle 複本。

RDS Custom for Oracle 的複本提升指南

提升複本時,請注意下列指示:

  • RDS Custom for Oracle 升級複本時,請勿發起容錯移轉。否則,可能會導致提升工作流程停滯。

  • 當 Oracle Custom for Oracle 正在升級您的 Oracle 複本時,請勿切換主要資料庫執行個體。否則,可能會導致提升工作流程停滯。

  • 當 RDS Custom for Oracle 正在升級您的 Oracle 複本時,請勿關閉主要資料庫執行個體。否則,可能會導致提升工作流程停滯。

  • 請勿嘗試以新提升的資料庫執行個體做為目標重新啟動複寫。RDS Custom for Oracle 提升您的 Oracle 複本之後,它會成為獨立的資料庫執行個體,而且不再具有複本角色。

如需詳細資訊,請參閱 RDS Custom for Oracle 複本提升的疑難排解

將 RDS Custom for Oracle 複本升級為獨立的資料庫執行個體

就像使用 RDS for Oracle 一樣,您可以將 RDS Custom for Oracle 提升為獨立的資料庫執行個體。當您提升 Oracle 複本時,RDS Custom for Oracle 資料庫執行個體將在可使用前重新啟動。如需提升 Oracle 複本的相關詳細資訊,請參閱 提升僅供讀取複本為獨立的資料庫執行個體

以下步驟顯示了提升 Oracle 複本至資料庫執行個體的一般流程:

  1. 停止任何交易寫入主要資料庫執行個體。

  2. 等待 RDS Custom for Oracle 套用所有更新至您的 Oracle 複本。

  3. 選擇 Amazon RDS 主控台、 AWS CLI 命令或 PromoteReadReplicaAmazon RDS API 作業上的升級選項 promote-read-replica,以提升您的 Oracle 複本。

提升 Oracle 複本可能需要幾分鐘。在此程序期間,RDS Custom for Oracle 會停止複寫並重新啟動您的複本。當重新啟動完成,該 Oracle 複本便可用做獨立的資料庫執行個體。

若要將 RDS Custom for Oracle 複本提升為獨立的資料庫執行個體
  1. 登入 AWS Management Console 並開啟 Amazon RDS 主控台,網址為 https://console.aws.amazon.com/rds/

  2. 在 Amazon RDS 主控台,選擇 Databases (資料庫)

    Databases (資料庫) 窗格隨即出現。每個 Oracle 複本會在 Role (角色) 欄中顯示 Replica (複本)。

  3. 選擇您想提升的 RDS Custom for Oracle 複本。

  4. 針對 Actions (動作),選擇 Promote (提升)。

  5. Promote Oracle replica (提升 Oracle 複本) 頁面上,輸入新升級資料庫執行個體的備份保留期間和備份時間。您無法將此數值設為 0

  6. 依您所需完成設定後,選擇 Promote Oracle replica (提升 Oracle 複本)。

若要將適用於 Oracle 複本的 RDS 自訂升級為獨立資料庫執行個體,請使用 AWS CLI promote-read-replica指令。

範例

對於LinuxmacOS、或Unix:

aws rds promote-read-replica \ --db-instance-identifier my-custom-read-replica \ --backup-retention-period 2 \ --preferred-backup-window 23:00-24:00

在 Windows 中:

aws rds promote-read-replica ^ --db-instance-identifier my-custom-read-replica ^ --backup-retention-period 2 ^ --preferred-backup-window 23:00-24:00

若要將 RDS Custom for Oracle 複本提升為獨立的資料庫執行個體,請使用所需參數 PromoteReadReplica 呼叫 Amazon RDS API DBInstanceIdentifier 操作。