Amazon RDS(Relational Database Service)에서 실수로 데이터를 삭제한 경우

프랭크 IT·2024년 5월 13일

Amazon RDS(Relational Database Service)에서 실수로 데이터를 삭제한 경우, 데이터 복구 작업은 설정된 백업 정책과 복구 옵션에 따라 달라질 수 있습니다. 여기에 몇 가지 일반적인 시나리오와 복구 방법을 안내해 드리겠습니다.

1. 자동 백업 사용하기

AWS RDS는 자동으로 일일 백업을 수행하고, 설정에 따라 1일에서 35일간 백업을 보관합니다. 삭제된 데이터를 복구하려면 다음 단계를 따르세요.

  1. 복구 시점 선택:

    • 실수가 발생하기 전 시점을 정확히 알고 있다면, 그 시점으로 데이터베이스를 복원할 수 있습니다.
  2. 복원 작업:

    • AWS Management Console에서 RDS 대시보드로 이동합니다.
    • ‘Snapshots’ 섹션으로 이동하여 ‘Automated’ 탭을 선택합니다.
    • 원하는 자동 백업을 선택하고, ‘Actions’ 메뉴에서 ‘Restore Snapshot’ 옵션을 클릭합니다.
    • 복구하고자 하는 시점을 설정하고, 복원할 DB 인스턴스에 대한 세부 정보를 입력합니다.
  3. 데이터 검증 및 복구:

    • 새로 복원된 데이터베이스 인스턴스에 로그인하여 삭제된 데이터가 올바르게 복구되었는지 확인합니다.
    • 필요한 데이터만 기존 데이터베이스로 이전하거나 전체 데이터베이스를 교체합니다.

2. 수동 스냅샷 활용

자동 백업 외에도 수동으로 생성한 스냅샷이 있다면 이를 활용할 수 있습니다.

  1. 수동 스냅샷 선택 및 복원:
    • RDS 대시보드에서 ‘Snapshots’ 섹션으로 이동합니다.
    • ‘Manual’ 탭에서 원하는 스냅샷을 선택하고, 동일한 방법으로 복원을 진행합니다.

3. 바이너리 로그 활용 (MySQL, MariaDB)

바이너리 로그를 활성화했다면, 특정 시점으로 롤백하는 것이 가능합니다.

  1. 로그 파일 확인:

    • 삭제 이벤트가 발생하기 전까지의 모든 변경 사항을 포함하는 로그 파일을 식별합니다.
  2. 데이터 복구:

    • mysqlbinlog 도구를 사용하여 해당 로그 파일을 처리하고, 필요한 SQL 문을 추출합니다.
    • 추출된 SQL 문으로 데이터를 복구합니다.

4. 응용 프로그램 레벨 백업

응용 프로그램이나 ORM이 제공하는 별도의 백업 메커니즘을 사용했다면, 해당 도구를 통해 데이터를 복구할 수 있습니다.

추가 조치

복구 작업 후에는 다음과 같은 조치를 고려해야 합니다.

  • 복구 프로세스 문서화:

    • 발생한 문제와 해결 과정을 문서화하여, 유사한 상황에서 더 빠르고 효율적으로 대응할 수 있도록 합니다.
  • 백업 정책 재검토:

    • 데이터를 안전하게 보호할 수 있는 백업 간격과 유지 기간을 재검토합니다.
  • 액세스 권한 및 프로토콜 강화:

    • 실수를 줄이기 위한 액세스 제한 및 변경 관리 프로토

콜을 강화합니다.

이러한 방법으로 AWS RDS에서 실수로 삭제된 데이터를 복구할 수 있습니다.

profile
AWS, Vue, Java, flutter, Mongodb, Python, Git , EKS, Docker, 독서, 영어, 에어로빅, 자전거, 농구, 바둑, 풋살, 복싱, Guitar, 글쓰기, 랭체인

0개의 댓글