Amazon Aurora 클러스터를 삭제할 때 나타나는 오류를 해결하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2019년 5월 16일

Amazon Aurora 클러스터를 삭제하고 싶습니다.

  • 하지만 오류 메시지가 나타났습니다.
    – 또는 –
  • Amazon Aurora 콘솔에서 삭제하는 옵션(비활성화됨)을 사용할 수 없습니다.

이 문제를 해결하고 클러스터를 삭제하려면 어떻게 해야 합니까?

간략한 설명

Amazon Relational Database Service(Amazon RDS) 콘솔 또는 AWS CLI(명령줄 인터페이스)를 사용하여 Aurora 클러스터를 삭제할 수 있습니다. 자세한 내용은 DB 인스턴스 삭제를 참조하십시오.

AWS CLI를 이용해 Aurora 클러스터를 삭제하려면 먼저 클러스터 내에서 인스턴스를 모두 삭제해야 합니다. 클러스터 내의 모든 인스턴스를 삭제한 후에 delete-db-클러스터를 이용해 클러스터를 삭제할 수 있습니다. Amazon RDS 콘솔을 사용하여 클러스터의 마지막 인스턴스를 삭제하면 빈 클러스터도 자동으로 삭제됩니다.

해결 방법

클러스터를 삭제하기 전에 다음을 고려하십시오.

  • 인스턴스가 하나뿐인 클러스터에서 Amazon RDS 콘솔을 사용하여 해당 인스턴스를 삭제하면 해당 인스턴스와 클러스터가 모두 삭제됩니다.
  • 쓰기 인스턴스 하나와 하나 이상의 읽기 인스턴스/읽기 전용 복제본이 있는 클러스터에서 읽기 인스턴스를 삭제하면 쓰기 인스턴스와 클러스터에 영향을 미치지 않습니다. 단, 쓰기 인스턴스를 삭제할 경우에는 읽기 인스턴스가 쓰기 인스턴스로 승격됩니다. 그런 다음 읽기 인스턴스가 장애 조치되는데, 이로 인해 가동 중단이 발생할 수 있습니다.

RDS 콘솔을 사용하여 RDS 클러스터 삭제

Amazon RDS 콘솔에서 다음 단계를 따릅니다.

  1. Amazon RDS 콘솔을 엽니다.
  2. 탐색 창에서 데이터베이스를 선택한 다음, 클러스터를 선택합니다.
  3. 작업을 선택한 다음, 클러스터 삭제를 선택합니다. 
    참고: 클러스터 삭제가 비활성화되어 있거나 사용할 수 없는 상태인 경우 클러스터 내에 삭제해야 할 인스턴스가 있을 수 있습니다.

"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를 사용하여 RDS 클러스터 삭제

참고: 다음 단계는 Aurora MySQL과 Aurora PostgreSQL 모두에 적용됩니다.

다음과 유사한 명령을 실행하여 Aurora 클러스터를 삭제합니다.

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

다음과 유사한 명령을 실행하여 읽기 전용 복제본 인스턴스를 삭제합니다.

aws rds delete-db-instance --db-instance-identifier mysql-aurora-replica --final-db-snapshot-identifier mydbinstancefinal2

AWS CLI를 사용하여 Aurora를 삭제할 때 오류 메시지가 나타날 경우 다음을 확인합니다.

InvalidDBClusterStateFault 오류

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

클러스터를 삭제하려면 먼저 클러스터에 연결된 인스턴스를 모두 삭제해야 합니다. 다음과 유사한 명령을 실행하여 인스턴스를 삭제합니다.

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

InvalidParameterCombination 오류

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

이 오류는 클러스터를 삭제하기 전에 클러스터 레벨 스냅샷을 생성하지 않았음을 경고하는 메시지입니다. 다음과 유사한 명령을 실행하면 인스턴스를 삭제하고 최종 스냅샷 생성 단계를 건너뛸 수 있습니다.

aws rds delete-db-instance --db-instance-identifier test-replica --skip-final-snapshot

참고: 자동 백업을 유지하려면 --no-delete-automated-backups를 추가합니다. 자동 백업을 삭제하려면 --delete-automated-backups를 이용합니다.

Cannot delete the last instance of the read replica DB cluster 오류

"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"

다음과 유사한 명령을 실행하여 읽기 전용 복제본 클러스터를 승격합니다.

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