메뉴
Amazon Relational Database Service
사용 설명서 (API Version 2014-10-31)

Aurora DB 클러스터에서 데이터베이스 복제

데이터베이스 복제를 사용하면 모든 데이터베이스를 빠르고 비용 효과적으로 복제할 수 있습니다. 복제본 데이터베이스는 최초 생성 시 최소한의 추가 공간만 필요합니다. 데이터베이스 복제는 원본 데이터베이스 또는 복제본 데이터베이스에서 데이터가 변경되는 시점에 데이터가 복사되는 기록 중 복사 프로토콜을 사용합니다. 동일한 DB 클러스터에서 여러 복제본을 생성할 수 있습니다. 다른 복제본에서 추가 복제본을 생성할 수도 있습니다. Aurora 스토리지와 관련하여 기록 중 복사 프로토콜을 사용하는 방법에 대한 자세한 내용은 데이터베이스 복제를 위한 기록 중 복사 프로토콜 단원을 참조하십시오.

다양한 사용 사례에서 특히 다음과 같이 프로덕션 환경에 영향을 미치기를 원치 않을 경우 데이터베이스 복제를 사용할 수 있습니다.

  • 스키마 변경 사항 또는 파라미터 그룹 변경 사항 등 변경 사항의 영향을 실험 및 평가하는 경우

  • 데이터 내보내기 또는 분석 쿼리 실행과 같은 워크로드 집약적 작업을 수행하는 경우

  • 비 프로덕션 환경에서 또는 테스트용으로 프로덕션 DB 클러스터의 복제본을 생성하는 경우

제한

데이터베이스 복제에는 다음에 설명하는 몇 가지 제한 사항이 있습니다.

  • AWS 리전 간에 복제본 데이터베이스를 생성할 수 없습니다. 복제본 데이터베이스는 원본 데이터베이스와 동일한 리전에 생성해야 합니다.

  • 현재 다른 복제본 기반의 복제본을 포함해 복사본 하나당 복제본 수는 최대 15개로 제한됩니다. 이후에는 복사본만 생성할 수 있습니다. 그렇지만 복사본 하나가 최대 15개 복제본으로 구성될 수 있습니다.

  • 교차 계정 데이터베이스 복제는 현재 지원하지 않습니다.

  • 복제본에 다양한 Virtual Private Cloud(VPC)를 제공할 수 있습니다. 하지만 이러한 VPC의 서브넷을 동일한 가용 영역 세트에 매핑해야 합니다.

데이터베이스 복제를 위한 기록 중 복사 프로토콜

다음 시나리오는 기록 중 복사 프로토콜의 작동 방식을 보여줍니다.

데이터베이스 복제 전

원본 데이터베이스에서 데이터가 페이지 단위로 저장됩니다. 다음 다이어그램에서 원본 데이터베이스에 4개 페이지가 있습니다.

  Amazon Aurora 원본 데이터베이스, 데이터베이스 복제 전

데이터베이스 복제 후

다음 다이어그램에 나오듯이 데이터베이스 복제 후 원본 데이터베이스에 변동이 없습니다. 원본 데이터베이스와 복제본 데이터베이스 모두 동일한 4개 페이지를 가리킵니다. 물리적으로 복사된 페이지가 없으며, 따라서 추가 스토리지가 필요하지 않습니다.

  Amazon Aurora 원본 데이터베이스 및 복제본 데이터베이스, 데이터베이스 복제 후

원본 데이터베이스에 변경 사항이 발생하는 경우

다음 예제에서 원본 데이터베이스가 Page 1에서 데이터를 변경합니다. 원래 Page 1에 기록하는 대신, 추가 스토리지를 사용하여 Page 1'이라는 새 페이지가 생성됩니다. 이제 원본 데이터베이스가 새로운 Page 1' 이외에 Page 2, Page 3, Page 4도 가리킵니다. 복제본 데이터베이스는 계속해서 Page 1~Page 4를 가리킵니다.

  Amazon Aurora 원본 데이터베이스 및 복제본 데이터베이스, 원본 데이터베이스 변경 후

복제본 데이터베이스에 변경 사항이 발생하는 경우

다음 다이어그램에서 복제본 데이터베이스도 변경되었습니다. 이번에는 Page 4입니다. 원래 Page 4에 기록하는 대신, 추가 스토리지를 사용하여 Page 4'라는 새 페이지가 생성됩니다. 원본 데이터베이스가 Page 1'Page 2~Page 4를 계속 가리키지만, 복제본 데이터베이스는 이제 Page 1~Page 3Page 4'도 가리킵니다.

  Amazon Aurora 원본 데이터베이스 및 복제본 데이터베이스, 복제본 데이터베이스 변경 후

두 번째 시나리오에서 예시한 대로, 데이터베이스 복제 이후 복제 생성 지점에 추가 스토리지가 필요하지 않습니다. 하지만 세 번째 및 네 번째 시나리오와 같이 원본 데이터베이스 및 복제본 데이터베이스가 변경될 경우 변경된 페이지만 생성됩니다. 시간이 경과하여 원본 데이터베이스와 복제본 데이터베이스 모두가 변경될 경우 변경 사항을 캡처하고 저장하기 위해 점점 더 많은 스토리지가 필요합니다.

원본 데이터베이스 삭제

하나 이상의 복제본 데이터베이스가 연결되어 있는 원본 데이터베이스를 삭제할 경우 복제본 데이터베이스는 영향을 받지 않습니다. 복제본 데이터베이스는 이전에 원본 데이터베이스가 소유하던 페이지를 계속 가리킵니다.

AWS Management Console

다음 절차에서는 AWS Management Console을 사용하여 Aurora DB 클러스터를 복제하는 방법에 대해 설명합니다.

AWS Management Console을 사용하여 DB 클러스터의 복제본을 생성하려면

  1. AWS Management Console에 로그인한 다음 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 [Instances]를 선택합니다. 복제본을 생성할 DB 클러스터의 기본 인스턴스를 선택합니다.

  3. [Instance Actions]와 [Create Clone]을 차례대로 선택합니다.

  4. [Create Clone] 창에 복제본 DB 클러스터의 기본 인스턴스 이름을 [DB Instance Identifier]로 입력합니다.

    필요에 따라 복제본 DB 클러스터에 다른 설정을 구성합니다. 다양한 DB 클러스터 설정에 대한 자세한 내용은 AWS Management Console 단원을 참조하십시오.

  5. [Create Clone]을 선택해 복제본 DB 클러스터를 시작합니다.

CLI

다음 절차에서는 AWS CLI를 사용하여 Aurora DB 클러스터를 복제하는 방법에 대해 설명합니다.

AWS CLI를 사용하여 DB 클러스터의 복제본을 생성하려면

  • restore-db-cluster-to-point-in-time AWS CLI 명령을 호출하고 다음 값을 입력합니다.

    • --source-db-cluster-identifier – 복제본을 생성할 원본 DB 클러스터의 이름입니다.

    • --db-cluster-identifier – 복제본 DB 클러스터의 이름입니다.

    • --restore-type copy-on-write - 복제본 DB 클러스터를 생성하기 위해 나타내는 값입니다.

    다음 예에서는 sample-source-cluster라는 DB 클러스터의 복제본을 생성합니다. 복제본 DB 클러스터의 이름은 sample-cluster-clone입니다.

    Linux, OS X, Unix의 경우:

    Copy
    aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier sample-source-cluster \ --db-cluster-identifier sample-cluster-clone \ --restore-type copy-on-write

    Windows의 경우:

    Copy
    aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier sample-source-cluster ^ --db-cluster-identifier sample-cluster-clone ^ --restore-type copy-on-write