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

읽기 전용 복제본을 사용하여 MySQL DB 인스턴스에서 Amazon Aurora DB 클러스터로 데이터 마이그레이션

Amazon RDS는 MySQL DB 엔진의 이진 로그 복제 기능을 사용하여 원본 MySQL DB 인스턴스의 Aurora 읽기 전용 복제본이라고 하는 특수한 유형의 DB 클러스터를 만들 수 있습니다. 원본 MySQL DB 인스턴스에 적용된 업데이트는 Aurora 읽기 전용 복제본에 비동기 방식으로 복제됩니다.

이 기능을 사용하여 원본 MySQL DB 인스턴스의 Aurora 읽기 전용 복제본을 생성해 MySQL DB 인스턴스에서 Aurora DB 클러스터로 마이그레이션하는 것을 권장합니다. MySQL DB 인스턴스와 Aurora 읽기 복제본 간 복제 지연이 0이라면 클라이언트 애플리케이션을 Aurora 읽기 전용 복제본으로 이동한 다음 Aurora 읽기 전용 복제본을 독립형 Aurora DB 클러스터로 만들 수 있습니다. 데이터 1테라바이트(TB)가 마이그레이션될 때까지 몇 시간 정도를 예상해야 합니다.

Aurora를 사용할 수 있는 리전 목록은 가용성을(를) 참조하십시오.

MySQL DB 인스턴스의 Aurora 읽기 전용 복제본을 생성하면 Amazon RDS는 원본 MySQL DB 인스턴스의 DB 스냅샷을 만듭니다(Amazon RDS에 대해 프라이빗이며 요금이 발생하지 않음). Amazon RDS가 이제 DB 스냅샷에서 Aurora 읽기 전용 복제본으로 데이터를 마이그레이션합니다. 데이터가 DB 스냅샷에서 새로운 Aurora DB 클러스터로 마이그레이션된 후 Amazon RDS는 MySQL DB 인스턴스와 Aurora DB 클러스터 간 복제를 시작합니다. MySQL DB 인스턴스에 InnoDB 외의 스토리지 엔진을 사용하거나 압축된 행 형식을 사용하는 테이블이 포함된 경우, Aurora 읽기 전용 복제본을 만들기 전에 이 테이블들이 InnoDB 스토리지 엔진과 동적 행 형식을 사용하도록 변경함으로써 Aurora 읽기 전용 복제본 생성 과정의 속도를 높일 수 있습니다. MySQL DB 스냅샷을 Aurora DB 클러스터에 복사하는 과정에 관한 자세한 내용은 RDS MySQL 스냅샷을 Aurora로 마이그레이션을(를) 참조하십시오.

MySQL DB 인스턴스 하나에 Aurora 읽기 전용 복제본 하나만 둘 수 있습니다. 암호화되지 않은 MySQL DB 인스턴스에 대한 Aurora 읽기 전용 복제본만 만들 수 있습니다.

참고

Amazon Aurora과 복제 마스터인 RDS MySQL DB 인스턴스의 MySQL 데이터베이스 엔진 버전의 기능 차이로 인해 복제 문제가 발생할 수 있습니다. 오류가 발생하면 Amazon RDS 커뮤니티 포럼 또는 AWS Support에서 지원을 받을 수 있습니다.

MySQL 읽기 전용 복제본에 대한 자세한 정보는 PostgreSQL, MySQL 및 MariaDB 읽기 전용 복제본 작업 단원을 참조하십시오.

Aurora 읽기 전용 복제본 생성

MySQL DB 인스턴스의 Aurora 읽기 전용 복제본은 콘솔 또는 AWS CLI를 사용해 생성할 수 있습니다.

AWS Management Console

원본 MySQL DB 인스턴스에서 Aurora 읽기 전용 복제본을 생성하는 방법

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

  2. 탐색 창에서 [Instances]를 선택합니다.

  3. Aurora 읽기 전용 복제본의 원본으로 사용할 MySQL DB 인스턴스를 선택한 다음 [Instance Actions]에서 [Create Aurora Read Replica]를 선택합니다.

     Aurora 읽기 전용 복제본 생성
  4. 다음 표의 설명대로 Aurora 읽기 전용 복제본에 사용하려는 DB 클러스터 사양을 선택하십시오.

    옵션 설명

    DB 인스턴스 클래스

    DB 클러스터의 기본 인스턴스에 대한 처리 및 메모리 요건을 정의한 DB 인스턴스 클래스를 선택합니다. DB 인스턴스 클래스 옵션에 대한 자세한 내용은 DB 인스턴스 클래스을(를) 참조하십시오.

    다중 AZ 배포

    장애 조치 지원을 위해 대상 리전의 다른 가용 영역에 새 DB 클러스터의 예비 복제본을 만들려면 [Create Replica in Different Zone]을 선택합니다. 다중 가용 영역에 대한 자세한 내용은 리전 및 가용 영역을(를) 참조하십시오.

    DB Instance Identifier

    Aurora 읽기 전용 복제본 DB 클러스터의 기본 인스턴스 이름을 입력합니다. 이 식별자는 새 DB 클러스터의 기본 인스턴스에 대한 엔드포인트 주소로 사용됩니다.

    DB 인스턴스 식별자는 다음과 같은 제약 조건이 있습니다.

    • 1~63자의 영숫자 문자 또는 하이픈으로 구성되어야 합니다.

    • 첫 번째 문자는 글자이어야 합니다.

    • 하이픈으로 끝나거나 하이픈이 2개 연속으로 이어져서는 안 됩니다.

    • 리전별로 각 AWS 계정의 모든 DB 인스턴스에 대해 고유해야 합니다.

    Aurora 읽기 전용 복제본 DB 클러스터는 원본 DB 인스턴스의 스냅샷으로 만드는 것이기 때문에 Aurora 읽기 전용 복제본의 마스터 사용자 이름과 마스터 암호는 원본 DB 인스턴스의 마스터 사용자 이름 및 마스터 암호와 동일합니다.

    VPC

    DB 클러스터를 호스팅할 VPC를 선택합니다. Amazon RDS에서 VPC를 생성하도록 하려면 [Create a New VPC]를 선택합니다. 자세한 내용은 DB 클러스터 사전 요구사항을(를) 참조하십시오.

    [Subnet Group]

    DB 클러스터에 사용할 DB 서브넷 그룹을 선택합니다. Amazon RDS에서 DB 서브넷 그룹을 생성하게 하려면 [Create a New DB Subnet Group]을 선택합니다. 자세한 내용은 DB 클러스터 사전 요구사항을(를) 참조하십시오.

    Publicly Accessible

    DB 클러스터에 퍼블릭 IP 주소를 할당하려면 Yes를 선택하고, 그렇지 않으면 No를 선택합니다. DB 클러스터의 인스턴스는 퍼블릭과 프라이빗 DB 인스턴스를 모두 혼합하여 사용할 수 있습니다. 모든 사용자의 액세스에서 인스턴스를 숨기는 방법에 대한 자세한 내용은 VPC에 있는 DB 인스턴스를 인터넷에서 숨기기을(를) 참조하십시오.

    가용 영역

    특정 가용 영역의 지정 여부를 결정합니다. 가용 영역에 대한 자세한 내용은 리전 및 가용 영역을(를) 참조하십시오.

    VPC Security Group(s)

    VPC 보안 그룹을 한 개 이상 선택하여 DB 클러스터에 대한 네트워크 액세스를 보안합니다. Amazon RDS에서 VPC 보안 그룹을 생성하게 하려면 [Create a New VPC Security Group]을 선택합니다. 자세한 내용은 DB 클러스터 사전 요구사항을(를) 참조하십시오.

    DB Cluster Identifier

    Aurora 읽기 전용 복제본 DB 클러스터의 이름을 입력합니다. 복제본의 대상 AWS 리전에서 사용자 계정에 고유한 이름이어야 합니다. 이 식별자는 DB 클러스터에 대한 클러스터 엔드포인트 주소로 사용됩니다. 클러스터 엔드포인트에 대한 자세한 내용은 Aurora 엔드포인트을(를) 참조하십시오.

    DB 클러스터 식별자는 다음과 같은 제약 조건이 있습니다.

    • 1~63자의 영숫자 문자 또는 하이픈으로 구성되어야 합니다.

    • 첫 번째 문자는 글자이어야 합니다.

    • 하이픈으로 끝나거나 하이픈이 2개 연속으로 이어져서는 안 됩니다.

    • 리전별로 각 AWS 계정의 모든 DB 클러스터에 대해 고유해야 합니다.

    Database Port

    애플리케이션과 유틸리티가 데이터베이스에 액세스할 때 사용할 포트를 지정합니다. Aurora DB 클러스터는 기본적으로 MySQL 포트, 3306으로 지정됩니다. 일부 기업에서는 방화벽으로 이 포트에 대한 연결을 차단합니다. 이처럼 기업 방화벽이 기본 포트를 차단할 경우 새로운 DB 클러스터에 다른 포트를 선택해야 합니다.

    DB 파라미터 그룹

    Aurora DB 클러스터의 DB 파라미터 그룹을 선택합니다. Aurora에 사용할 수 있는 기본 DB 파라미터 그룹이 있거나, 고유의 DB 파라미터 그룹을 생성할 수도 있습니다. DB 파라미터 그룹에 대한 자세한 내용은 DB 파라미터 그룹 작업 단원을 참조하십시오.

    DB 클러스터 파라미터 그룹

    Aurora DB 클러스터의 DB 클러스터 파라미터 그룹을 선택합니다. Aurora에 사용할 수 있는 기본 DB 클러스터 파라미터 그룹이 있거나, 고유의 DB 클러스터 파라미터 그룹을 생성할 수도 있습니다. DB 클러스터 파라미터 그룹에 대한 자세한 내용은 DB 파라미터 그룹 작업을(를) 참조하십시오.

    [Enable Encryption]

    해당 사항 없음.

    Priority

    DB 클러스터의 장애 조치 우선 순위를 선택하십시오. 값을 선택하지 않을 경우 기본값은 tier-1입니다. 기본 인스턴스 장애로부터 복원할 때 이 우선 순위에 따라 승격할 Aurora Replicas 순서가 결정됩니다. 자세한 내용은 Aurora DB 클러스터의 내결함성을(를) 참조하십시오.

    [Backup Retention Period]

    Aurora가 데이터베이스 백업 사본을 보존하는 기간을 1~35일로 선택합니다. 백업 사본은 데이터베이스를 마지막 특정 시점으로 복구(PITR)하는 데 사용됩니다.

    Enable Enhanced Monitoring

    DB 클러스터가 실행되는 운영 체제에 대한 실시간 수집 측정치를 활성화하려면 [Yes]를 선택합니다. 자세한 내용은 Enhanced Monitoring을(를) 참조하십시오.

    역할 모니터링

    Enhanced Monitoring에 사용할 IAM 역할. 자세한 내용은 Enhanced Monitoring 설정 및 활성화을(를) 참조하십시오.

    Granularity

    [Enable Enhanced Monitoring]을 Yes로 설정한 경우에만 사용할 수 있습니다. DB 클러스터에 대해 측정치를 수집하는 간격(초)을 설정합니다.

    Auto Minor Version Upgrade

    MySQL DB 엔진의 부 버전 업그레이드가 있을 때 Aurora DB 클러스터가 자동으로 업그레이드를 실행하도록 하려면 Yes를 선택합니다.

    Auto Minor Version Upgrade 옵션은 Amazon Aurora DB 클러스터에 대해 MySQL 엔진 마이너 버전으로의 업그레이드에만 적용됩니다. 시스템 안정성 유지를 위한 정기 패치에는 적용되지 않습니다.

    유지 관리 기간

    시스템 유지 관리를 실행하는 기간을 주 단위로 선택합니다.

  5. [Create Read Replica]를 선택합니다.

AWS CLI

원본 MySQL DB 인스턴스에서 Aurora 읽기 전용 복제본을 생성하려면 create-db-clustercreate-db-instance AWS CLI 명령을 사용하여 새로운 Aurora DB 클러스터를 만드십시오. create-db-cluster 명령을 호출할 때는 원본 MySQL DB 인스턴스의 Amazon 리소스 이름(ARN)을 식별하는 --replication-source-identifier 파라미터를 포함시키십시오. Amazon RDS ARN에 대한 자세한 내용은 Amazon Relational Database Service(Amazon RDS)를 참조하십시오.

Aurora 읽기 전용 복제본은 원본 MySQL DB 인스턴스와 동일한 마스터 사용자 이름, 마스터 암호, 데이터베이스 이름을 사용하므로 마스터 사용자 이름, 마스터 암호 또는 데이터베이스 이름을 지정하지 마십시오.

Linux, OS X, Unix의 경우:

Copy
aws rds create-db-cluster --db-cluster-identifier sample-replica-cluster --engine aurora \ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2 \ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:db:master-mysql-instance

Windows의 경우:

Copy
aws rds create-db-cluster --db-cluster-identifier sample-replica-cluster --engine aurora ^ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2 ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:db:master-mysql-instance

콘솔을 사용하여 Aurora 읽기 전용 복제본을 생성하면 Amazon RDS에서 자동으로 DB 클러스터 Aurora 읽기 전용 복제본의 기본 인스턴스를 생성합니다. AWS CLI를 사용하여 Aurora 읽기 전용 복제본을 생성하는 경우에는 DB 클러스터 Aurora 읽기 전용 복제본의 기본 인스턴스를 명시적으로 생성해야 합니다. 기본 인스턴스는 클러스터에 생성된 최초의 DB 인스턴스입니다.

create-db-instance AWS CLI 명령을 호출하여 DB 클러스터를 위한 기본 인스턴스를 생성합니다. DB 클러스터의 이름을 --db-cluster-identifier 파라미터 값으로 포함합니다.

Linux, OS X, Unix의 경우:

Copy
aws rds create-db-instance --db-instance-identifier sample-replica-instance \ --db-cluster-identifier sample-replica-cluster --engine aurora --db-instance-class db.r3.large

Windows의 경우:

Copy
aws rds create-db-instance --db-instance-identifier sample-replica-instance ^ --db-cluster-identifier sample-replica-cluster --engine aurora --db-instance-class db.r3.large

Aurora 읽기 전용 복제본 보기

콘솔 또는 AWS CLI를 사용하여 Aurora DB 클러스터의 MySQL과 Aurora 읽기 전용 복제본의 관계를 볼 수 있습니다.

AWS Management Console

MySQL DB 인스턴스의 Aurora 읽기 전용 복제본을 보는 방법

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

  2. 탐색 창에서 [Instances]를 선택합니다.

  3. MySQL DB 인스턴스를 확장해 [Replication] 탭을 선택합니다. Aurora 읽기 전용 복제본 정보가 [Deployment DB Clusters] 테이블의 [replica] 역할을 가진 행에 표시됩니다.

     Aurora 읽기 전용 복제본 보기

Aurora 읽기 전용 복제본의 마스터 MySQL DB 인스턴스를 보는 방법

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

  2. 탐색 창에서 [Clusters]를 선택합니다.

  3. Aurora 읽기 전용 복제본의 DB 클러스터를 확장해 [Replication] 탭을 선택합니다. 마스터 MySQL DB 인스턴스 정보가 [Replication Source] 필드에 나타납니다.

     MySQL 마스터 보기

AWS CLI

AWS CLI를 사용하여 Aurora DB 클러스터의 MySQL과 Aurora 복제 관계를 보려면 describe-db-clustersdescribe-db-instances 명령을 사용하십시오.

어떤 MySQL DB 인스턴스가 마스터인지 결정하려면 describe-db-clusters를 사용하고 --db-cluster-identifier 옵션에서 Aurora 읽기 전용 복제본의 클러스터 식별자를 지정하십시오. 복제 마스터인 DB 인스턴스의 ARN 출력에서 ReplicationSourceIdentifier 요소을(를) 참조하십시오.

어떤 DB 클러스터가 Aurora 읽기 전용 복제본인지 결정하려면 describe-db-clusters를 사용하고 --db-instance-identifier 옵션에서 MySQL DB 인스턴스의 인스턴스 식별자를 지정하십시오. Aurora 읽기 전용 복제본의 DB 클러스터 식별자의 출력에서 ReadReplicaDBClusterIdentifiers 요소을(를) 참조하십시오.

Linux, OS X, Unix의 경우:

Copy
aws rds describe-db-clusters \ --db-cluster-identifier myreadreplicacluster
Copy
aws rds describe-db-instances \ --db-instance-identifier mysqlmaster

Windows의 경우:

Copy
aws rds describe-db-clusters ^ --db-cluster-identifier myreadreplicacluster
Copy
aws rds describe-db-instances ^ --db-instance-identifier mysqlmaster

Aurora 읽기 전용 복제본 승격

마이그레이션이 완료된 후 Aurora 읽기 전용 복제본을 독립형 DB 클러스터로 승격시키고 클라이언트 애플리케이션을 Aurora 읽기 전용 복제본의 엔드포인트로 보낼 수 있습니다. Aurora 엔드포인트에 대한 자세한 내용은 Aurora 엔드포인트을(를) 참조하십시오. 승격은 상당히 빨리 완료되며, 승격 중에 Aurora 읽기 전용 복제본에 대한 읽기 및 쓰기가 가능합니다. 다만 승격 도중에 마스터 MySQL DB 인스턴스를 삭제하거나 DB 인스턴스와 Aurora 읽기 전용 복제본의 링크를 해제할 수는 없습니다.

Aurora 읽기 전용 복제본을 승격시키기 전에 원본 MySQL DB 인스턴스에 대한 트랜잭션 쓰기를 중단한 다음 Aurora 읽기 전용 복제본에서의 복제 지연이 0이 될 때까지 기다립니다. Aurora 읽기 전용 복제본의 복제 지연은 Aurora 읽기 전용 복제본에서 SHOW SLAVE STATUS 명령을 호출해 Seconds behind master 값을 읽어 조회할 수 있습니다.

마스터에 대한 쓰기 트랜잭션이 멈추고 복제 지연이 0이 된 후 Aurora 읽기 전용 복제본에 대한 쓰기를 시작할 수 있습니다. 그 전에 Aurora 읽기 전용 복제본에 쓰기를 수행하고 테이블을 수정하면(MySQL에서도 수정됨) Aurora에 대한 복제가 실패할 수 있습니다. 이렇게 될 경우, Aurora 읽기 전용 복제본을 삭제하고 다시 만들어야 합니다.

승격 후, 탐색 창에서 [Instances]를 선택하고 Aurora 읽기 복제본의 Promoted Read Replica cluster to stand-alone database cluster 이벤트가 있는지 확인하여 승격이 완료되었는지 확인하십시오. 승격이 완료된 후에는 마스터 MySQL DB 인스턴스와 Aurora 읽기 전용 복제본의 링크가 해제되고, 원한다면 DB 인스턴스를 안전하게 삭제할 수 있습니다.

AWS Management Console

Aurora 읽기 전용 복제본을 DB 클러스터로 승격시키려면

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

  2. 탐색 창에서 [Instances]를 선택합니다.

  3. Aurora 읽기 전용 복제본의 DB 인스턴스를 선택한 다음 [Instance Actions]에서 [Promote Read Replica]를 선택합니다.

     Aurora 읽기 전용 복제본 생성
  4. [Promote Read Replica]를 선택합니다.

AWS CLI

Aurora 읽기 전용 복제본을 DB 클러스터로 승격시키려면 promote-read-replica-db-cluster AWS CLI 명령을 사용하십시오.

Linux, OS X, Unix의 경우:

Copy
aws rds promote-read-replica-db-cluster \ --db-cluster-identifier myreadreplicacluster

Windows의 경우:

Copy
aws rds promote-read-replica-db-cluster ^ --db-cluster-identifier myreadreplicacluster

관련 주제