如何對在刪除 Amazon Aurora 叢集時收到的錯誤進行疑難排解?

2 分的閱讀內容
0

我想刪除 Amazon Aurora 叢集,但是: 我收到錯誤訊息。        - 或 - Amazon Relational Database Service (Amazon RDS) 主控台中的刪除選項不可用 (呈灰色)。如何對此問題進行疑難排解並刪除我的叢集?

簡短描述

您可以使用 Amazon RDS 主控台或 AWS Command Line Interface (AWS CLI),來刪除 Amazon Aurora 叢集。如需詳細資訊,請參閱刪除資料庫執行個體

若要使用 AWS CLI 刪除 Aurora 叢集,請先刪除叢集內的所有資料庫執行個體。在刪除叢集內的所有資料庫執行個體之後,您可以使用 delete-db-cluster 來刪除叢集。如果您使用 Amazon RDS 主控台刪除叢集中的最後一個資料庫執行個體,系統會自動刪除空的叢集。

解決方法

**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請確定您使用的是最新版本的 AWS CLI

在刪除叢集之前,考慮下列事項:

  • 如果您的叢集僅包含一個資料庫執行個體,且您使用 Amazon RDS 主控台刪除該資料庫執行個體,請同時刪除該資料庫執行個體和叢集。
  • 如果您的叢集包含一個寫入器執行個體和一或多個讀取器執行個體/僅供讀取複本,且您刪除讀取器執行個體,則寫入器執行個體和叢集不受影響。如果您刪除寫入器執行個體,讀取器執行個體會自動提升為寫入器。此容錯移轉操作會導致停機。

使用 Amazon RDS 主控台刪除內部沒有執行個體的 Aurora 叢集

請在 Amazon RDS 主控台中執行下列步驟:

  1. 開啟 Amazon RDS 主控台
  2. 從導覽窗格中選擇資料庫,然後選取叢集。
  3. 選擇動作,然後選擇刪除叢集
    注意:如果刪除叢集呈灰色或無法使用,則叢集內可能存在必須刪除的執行個體。在此情況下,請刪除叢集中的所有執行個體。在您使用 Amazon RDS 主控台刪除叢集中的最後一個執行個體時,系統會自動刪除叢集。

如果您收到下列錯誤,請執行下面的步驟。

「This database has deletion protection option enabled, to be able to delete the last Aurora DB instance, modify the Aurora cluster and disable deletion protection」

  1. 開啟 Amazon RDS 主控台
  2. 從導覽窗格中選擇資料庫,然後選取叢集。
  3. 選擇動作,然後選擇修改叢集
  4. 選擇停用刪除保護,然後選擇繼續
  5. 選擇立即套用

使用 AWS CLI 刪除 Aurora 叢集

**注意:**下列步驟同時適用於 Aurora MySQL 和 Aurora PostgreSQL。

1.    刪除 Aurora 叢集

執行下列命令:

aws rds delete-db-cluster --db-cluster-identifier sample-cluster --final-db-snapshot-identifier mydbinstancefinal

此命令會刪除叢集,並拍攝最終的資料庫叢集快照。如果您不想拍攝最終快照,請在執行此命令時使用 ---skip-final-snapshot 選項。在執行此命令時,您可能會收到下列錯誤:

「An error occurred (InvalidDBClusterStateFault) when calling the DeleteDBCluster operation: Cluster cannot be deleted, it still contains DB instances in non-deleting state」

這表示無法刪除叢集,因為叢集中存在執行個體。在刪除叢集之前,務必刪除與叢集關聯的所有執行個體。

2.    刪除叢集中的執行個體

執行下列命令:

aws rds delete-db-instance --db-instance-identifier sample-instance

在嘗試刪除叢集中的執行個體時,您可能會收到下列其中一則錯誤訊息。

  • 「InvalidParameterCombination: An error occurred (InvalidParameterCombination) when calling the DeleteDBInstance operation: FinalDBSnapshotIdentifier cannot be specified when deleting a cluster instance」

    如果您執行刪除叢集中的執行個體的命令,在使用 --final-db-snapshot-identifier 選項時,會收到此錯誤。此錯誤警告您在刪除叢集中的執行個體時,無法拍攝最終快照。刪除 --final-db-snapshot-identifier 選項或使用 --skip-final-snapshot 選項,然後再次執行此命令。

  • 「InvalidDBClusterStateFault: Cannot delete the last instance of the read replica DB cluster.Promote the DB cluster to a standalone DB cluster in order to delete it」

    此錯誤表示您嘗試刪除的 Aurora 叢集充當複本,但在叢集提升為獨立叢集之前無法刪除該叢集的最後一個執行個體。

3.    提升複本叢集

透過執行下列命令來提升複本叢集:

aws rds promote-read-replica-db-cluster --db-cluster-identifier rds-mysql-aurora-replica-cluster

相關資訊

如何刪除或終止 RDS 資源?

管理 Amazon Aurora 資料庫叢集

刪除 Aurora 資料庫叢集中的資料庫執行個體

AWS 官方
AWS 官方已更新 4 年前