跳至內容

如何使用讀取複寫來監控 Amazon RDS for Oracle 執行個體的複寫延遲並進行疑難排解?

2 分的閱讀內容
0

我想在使用 Amazon Relational Database Service (Amazon RDS) for Oracle 資料庫執行個體的讀取複寫時,監控複寫延遲。

簡短說明

請使用 Oracle Active Data Guard License,為您的 RDS for Oracle 執行個體設定讀取複寫。如果複本處於唯讀狀態,則必須具備 Active Data Guard License。當您為執行個體建立讀取複寫時,主要執行個體和讀取複寫執行個體會以 Data Guard 最高效能模式運作。如需更多資訊,請參閱 Oracle 網站上的 Oracle Data Guard 保護模式。接著,使用讀取複寫將讀取操作從主要執行個體分流。

發生災難復原事件時,您也可以將讀取複寫提升為獨立資料庫執行個體。如需更多資訊,請參閱將讀取複寫提升為獨立資料庫執行個體

為執行個體設定讀取複寫前,請先檢查與版本和授權相關的限制。如需更多資訊,請參閱 RDS for Oracle 複本的其他考量事項

解決方法

當您將讀取複寫用於 RDS for Oracle 執行個體時,請注意以下事項:

  • Amazon RDS 是受管服務。內部 RDS_DATAGUARD 使用者會管理複寫程序。您建立讀取複寫執行個體時,系統會設定此使用者。
  • 您無法從管理員使用者 AWS 帳戶停止受管復原程序。
  • 您無法為 RDS 讀取複寫設定或修改 Oracle Data Guard Broker。
  • 您無法延遲將資料,從主要執行個體複寫到讀取複寫執行個體。
  • 系統會將選項群組中的修改反映到讀取複寫執行個體。如果您在同一個 AWS 區域設定讀取複寫,則執行個體會與相同的選項群組建立關聯。如需更多資訊,請參閱 RDS for Oracle 複本的選項群組限制

監控複寫延遲

如果複本無法跟上主要執行個體,則複寫可能會出現延遲。若要在 Amazon CloudWatch 中監控複寫延遲,請在讀取複寫執行個體檢視 Amazon RDS 指標 ReplicaLag。此指標會顯示以毫秒為單位的複寫延遲。如需更多資訊,請參閱監控讀取複寫使用 Amazon CloudWatch 監控 Amazon RDS 指標

若要在 Active Data Guard 中監控複寫延遲並進行疑難排解,請完成以下步驟:

  1. 若要檢查 Active Data Guard 延遲指標,請執行以下命令:

    sql > SELECT name,value,datum_time,time_computed FROM v$dataguard_stats;
  2. 若要確認主要執行個體與讀取複寫執行個體之間是否存在封存日誌間隙,請執行以下命令:

    sql >  SELECT archived.thread# THREAD,max(archived.sequence#) PRIMARY,max(applied.sequence#) STANDBY,(max(archived.sequence#) - max(applied.sequence#)) GAP FROM v$archived_log archived,v$archived_log applied WHERE archived.thread#=applied.thread# AND applied.applied='YES' GROUP BY archived.thread#;

    **注意:**當出現複寫延遲時,RDS for Oracle 不會向您發出提醒。為 RDS 指標 ReplicaLag 建立 CloudWatch 警示,以便在讀取複寫無法跟上主要執行個體時傳送通知。

對複寫延遲進行疑難排解

  • 如果主要執行個體無法使用,請使用 Aurora 和 RDS 主控台檢查執行個體的目前狀態。同時,請確認其他 SQL 用戶端是否可存取該執行個體。如果主要執行個體無法使用,則讀取複寫無法跟上主要執行個體。請檢查 Amazon RDS 事件,找出主要執行個體無法使用的原因。接著,修正執行個體以確保可存取。
  • 如果主要執行個體承受高 CPU 或記憶體過載,您可能會遇到嚴重的傳輸延遲。監控執行個體的 CloudWatch 指標。此外,請使用 Enhanced Monitoring 識別特定程序是否造成異常的記憶體或 CPU 使用率飆升。如需更多資訊,請參閱在 Aurora 和 RDS 主控台中檢視作業系統指標。當 CPU 或記憶體負載下降時,複本可能會跟上主要執行個體。如果執行個體上的過載屬於預期情況,請擴展執行個體類別、IOPS 或輸送量。
  • 監控主要執行個體和讀取複寫的 alert.log 檔案,以識別警示或 ORA 錯誤。這些問題可能會影響傳輸程序或套用程序。如需更多資訊,請參閱 Oracle 資料庫日誌檔案。解決識別出的錯誤以降低延遲。
  • 若要複寫這些變更,您必須重新建立待命執行個體。最佳實務是在設定讀取複寫前更新重做日誌參數。如需更多資訊,請參閱變更記錄組態
  • 與主要執行個體相比,如果讀取複寫執行個體設定較少的運算或容量,則可能會減慢變更套用速度。這會造成複寫延遲。 在 CloudWatch 中監控 RDS 指標,以檢查兩個執行個體的流量是否降低。如果主要執行個體沒有節流執行個體,而讀取複寫正在受到限流,請識別受到限流的資源。接著,視需要擴展儲存或運算組態。
  • 當主要執行個體沒有負載,而讀取複寫執行個體有大量負載並造成資源限流時,您可能會遇到複本延遲。若要解決複本延遲,請擴展複本執行個體中的資源。或者,對讀取複寫執行個體中受到限流的資源進行疑難排解並修正。

相關資訊

使用 Amazon RDS for Oracle 的讀取複寫

搭配 Amazon RDS for Oracle 使用 Oracle Active Data Guard 進行受管災難復原和受管讀取器機群

AWS 官方已更新 2 年前