本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將 RDS Custom for Oracle 執行個體還原至某個時間點
您可以將資料庫執行個體還原至特定時間點 (PITR),建立新的資料庫執行個體。若要支援 PITR,您的資料庫執行個體必須將備份保留設定為非零值。
RDS Custom for Oracle 資料庫執行個體的最晚可還原時間取決於許多因素,但通常是目前時間的 5 分鐘內。若要查看資料庫執行個體的最新可還原時間,請使用 AWS CLI describe-db-instances 命令,並查看在資料庫執行個體的 LatestRestorableTime 欄位內傳回的值。若要在 Amazon RDS 主控台中查看每個資料庫執行個體的最新可還原時間,請選擇自動備份。
您可以還原至備份保留期間內的任何時間點。若要查看每個資料庫執行個體的最早可還原時間,請在 Amazon RDS 主控台中選擇自動備份。
如需 PITR 的一般資訊,請參閱 將 Amazon RDS 的資料庫執行個體還原至指定時間。
RDS Custom for Oracle 的 PITR 考量
在 RDS Custom for Oracle 中,PITR 與 Amazon RDS 中的 PITR 有以下的重要不同:
-
還原的資料庫名稱與來源資料庫執行個體中的名稱相同。您無法指定不同的名稱。預設值為
ORCL。 -
AWSRDSCustomIamRolePolicy需要新許可。如需更多詳細資訊,請參閱 步驟 2:將存取政策新增至 AWSRDSCustomInstanceRoleForRdsCustomInstance。 -
所有 RDS Custom for Oracle 資料庫執行個體都必須將備份保留設定為非零值。
-
如果您變更作業系統或資料庫執行個體時區,PITR 可能無法運作。如需變更時區的相關資訊,請參閱 Oracle 時區。
-
如果您將自動化設定為
ALL_PAUSED,RDS Custom 會暫停封存重做日誌檔案的上傳,包括在最近一次可還原時間 (LRT) 之前建立的日誌。我們建議您暫停自動化一段時間。舉例來說,假設您的 LRT 是 10 分鐘前。您暫停自動化。暫停期間,RDS Custom 不會上傳封存的重做日誌。如果您的資料庫執行個體當機,您只能復原到暫停時存在的 LRT 之前的時間。當您繼續自動化時,RDS Custom 會繼續上傳日誌。LRT 會繼續。套用一般 PITR 規則。
-
在 RDS Custom 中,您可以手動指定保留封存的重做日誌的任意時數,以便在 RDS Custom 上傳後刪除之前保留這些封存的重做日誌。請如下指定小時數:
-
建立名為
/opt/aws/rdscustomagent/config/redo_logs_custom_configuration.json的文字檔案。 -
以下列格式新增 JSON 物件:
{"archivedLogRetentionHours" : "。數字必須是介於 1—840 範圍內的整數。num_of_hours"}
-
-
假設您將非 CDB 插入容器資料庫 (CDB) 作為 PDB,然後嘗試 PITR。只在您先前已備份 PDB 時,操作才會成功。建立或修改 PDB 之後,建議您一律將其備份。
-
我們建議您不要自訂資料庫初始化參數。例如,修改下列參數會影響 PITR:
-
CONTROL_FILE_RECORD_KEEP_TIME會影響上傳和刪除日誌的規則。 -
LOG_ARCHIVE_DEST_n不支援多個目的地。 -
ARCHIVE_LAG_TARGET會影響最新的可還原時間。ARCHIVE_LAG_TARGET設定為300,因為復原點目標 (RPO) 為 5 分鐘。為了實現此目標,RDS 每隔 5 分鐘就會切換線上重做日誌,並將其存放在 Amazon S3 儲存貯體中。如果日誌切換太頻繁而導致 RDS Custom for Oracle 資料庫的效能問題,您可以將資料庫執行個體和儲存體擴展為具有更高 IOPS 和輸送量的項目。如果對於您的復原計畫有必要,您可以將ARCHIVE_LAG_TARGET初始化參數的設定調整為 60 到 7200 的值。
-
-
如果您自訂資料庫初始化參數,我們強烈建議您只自訂下列項目:
-
COMPATIBLE -
MAX_STRING_SIZE -
DB_FILES -
UNDO_TABLESPACE -
ENABLE_PLUGGABLE_DATABASE -
CONTROL_FILES -
AUDIT_TRAIL -
AUDIT_TRAIL_DEST
針對其他所有初始化參數,RDS Custom 會還原預設值。如果您修改不在上述清單中的參數,它可能會對 PITR 產生不良影響,並導致無法預期的結果。例如,
CONTROL_FILE_RECORD_KEEP_TIME會影響上傳和刪除日誌的規則。 -
您可以使用 AWS 管理主控台、AWS CLI 或 RDS API 將 RDS Custom 資料庫執行個體還原至某個時間點。
若要將 RDS Custom 資料庫執行個體還原至指定時間
登入 AWS 管理主控台,開啟位於 https://console.aws.amazon.com/rds/
的 Amazon RDS 主控台。 -
在導覽窗格中,選擇 Automated backups (自動備份)。
-
選擇您想要還原的 RDS Custom 資料庫執行個體。
-
針對 Actions (動作),選擇 Restore to point in time (還原至時間點)。
Restore to point in time (還原到時間點) 視窗隨即出現。
-
選擇 Latest restorable time (最近的可還原時間) 以還原最近一次的可能時間,或選擇 Custom (自訂) 以選擇一個時間。
如果您選擇 Custom (自訂),請輸入您希望執行個體叢集還原到什麼日期和時間。
會以您的當地時區顯示時間,根據國際標準時間 (UTC) 的時差來表示。例如,UTC-5 是東部標準時間/中部日光節約時間。
-
對於 DB Instance Identifier (資料庫執行個體識別符),輸入目標還原 RDS Custom 資料庫執行個體的名稱。名稱必須是唯一的。
-
視需要選擇其他選項,例如資料庫執行個體類別。
-
選擇 Restore to point in time (還原至時間點)。
您可以使用 restore-db-instance-to-point-in-time AWS CLI 命令來建立新的 RDS Custom 資料庫執行個體,將資料庫執行個體還原至指定時間。
使用下列其中一個選項來指定要從中還原的備份:
-
--source-db-instance-identifiermysourcedbinstance -
--source-dbi-resource-iddbinstanceresourceID -
--source-db-instance-automated-backups-arnbackupARN
custom-iam-instance-profile 選項為必要項目。
下列範例會將 my-custom-db-instance 還原至名稱為 my-restored-custom-db-instance 的新資料庫執行個體,截至指定的時間。
對於 Linux、macOS 或 Unix:
aws rds restore-db-instance-to-point-in-time \ --source-db-instance-identifiermy-custom-db-instance\ --target-db-instance-identifiermy-restored-custom-db-instance\ --custom-iam-instance-profileAWSRDSCustomInstanceProfileForRdsCustomInstance\ --restore-time2022-10-14T23:45:00.000Z
在 Windows 中:
aws rds restore-db-instance-to-point-in-time ^ --source-db-instance-identifiermy-custom-db-instance^ --target-db-instance-identifiermy-restored-custom-db-instance^ --custom-iam-instance-profileAWSRDSCustomInstanceProfileForRdsCustomInstance^ --restore-time2022-10-14T23:45:00.000Z