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

mysql.rds_set_external_master

MySQL DB 인스턴스를 Amazon RDS 외부에서 실행 중인 MySQL 인스턴스의 읽기 전용 복제본으로 구성합니다.

구문

Copy
CALL mysql.rds_set_external_master ( host_name , host_port , replication_user_name , replication_user_password , mysql_binary_log_file_name , mysql_binary_log_file_location , ssl_encryption );

파라미터

host_name

복제 마스터가 될 Amazon RDS 외부에서 실행 중인 MySQL 인스턴스의 호스트 이름 또는 IP 주소입니다.

host_port

복제 마스터로 구성될 Amazon RDS 외부에서 실행 중인 MySQL 인스턴스에서 사용하는 포트입니다. 네트워크 구성에 포트 번호를 변환하는 SSH 포트 복제가 포함되는 경우 SSH에 의해 공개되는 포트 이름을 지정하십시오.

replication_user_name

Amazon RDS 외부에서 실행하는 MySQL 인스턴스에서 REPLICATION CLIENT 및 REPLICATION SLAVE 권한을 보유한 사용자의 ID입니다. 외부 인스턴스를 사용한 복제에만 사용되는 계정을 제공하는 것이 좋습니다.

replication_user_password

replication_user_name에 지정된 사용자 ID의 암호입니다.

mysql_binary_log_file_name

복제 정보를 포함하는 복제 마스터에 있는 이진 로그의 이름입니다.

mysql_binary_log_file_location

복제 시 복제 정보를 읽기 시작할 mysql_binary_log_file_name 이진 로그 내 위치입니다.

ssl_encryption

이 옵션은 현재 구현되지 않습니다. 기본값은 0입니다.

사용 시 주의사항

mysql.rds_set_external_master 프로시저는 마스터 사용자가 실행해야 합니다. 또한 Amazon RDS 외부에서 실행 중인 MySQL 인스턴스의 읽기 전용 복제본으로 구성될 MySQL DB 인스턴스에서 실행해야 합니다.

mysql.rds_set_external_master를 실행하기 전에 먼저 Amazon RDS 외부에서 실행하는 MySQL 인스턴스를 복제 마스터로 구성해야 합니다. Amazon RDS 외부에서 실행하는 MySQL 인스턴스에 연결하려면 MySQL의 외부 인스턴스에서 REPLICATION CLIENTREPLICATION SLAVE 권한이 있는 복제 사용자를 나타내는 replication_user_namereplication_user_password 값을 지정해야 합니다.

MySQL의 외부 인스턴스를 복제 마스터로 구성하려면

  1. 선택한 MySQL 클라이언트를 사용하여 MySQL의 외부 인스턴스에 연결하고 복제에 사용될 사용자 계정을 생성합니다. 다음은 그 한 예입니다.

    Copy
    CREATE USER 'repl_user'@'mydomain.com' IDENTIFIED BY 'SomePassW0rd'
  2. MySQL의 외부 인스턴스에서 복제 사용자에게 REPLICATION CLIENTREPLICATION SLAVE 권한을 부여합니다. 다음 예에서는 도메인의 'repl_user' 사용자에게 모든 데이터베이스에 대한 REPLICATION CLIENTREPLICATION SLAVE 권한을 부여합니다.

    Copy
    GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'repl_user'@'mydomain.com' IDENTIFIED BY 'SomePassW0rd'

자세한 내용은 Amazon RDS 외부에서 실행 중인 MySQL 또는 MariaDB 인스턴스를 사용한 복제 섹션을 참조하십시오.

참고

가능하다면 읽기 전용 복제본을 사용하여 두 Amazon RDS DB 인스턴스 간 복제를 관리하는 것이 좋습니다. 또한 Amazon RDS DB 인스턴스 간에 더 복잡한 복제 토폴리지를 활성화하려면 이 복제본과 기타 복제 관련 저장 프로시저만 사용하는 것이 좋습니다. 이러한 저장 프로시저는 Amazon RDS 외부에서 실행 중인 MySQL 인스턴스 복제를 활성화하기 위해 주로 제공됩니다. Amazon RDS DB 인스턴스 간 복제 관리에 대한 자세한 내용은 PostgreSQL, MySQL 및 MariaDB 읽기 전용 복제본 작업 단원을 참조하십시오.

mysql.rds_set_external_master를 호출하여 Amazon RDS DB 인스턴스를 읽기 전용 복제본으로 구성한 후 복제본에서 mysql.rds_start_replication을 호출하여 복제 프로세스를 시작할 수 있습니다. mysql.rds_reset_external_master를 호출하여 읽기 전용 복제본 구성을 제거할 수 있습니다.

mysql.rds_set_external_master가 호출되면 Amazon RDS에서 mysql.rds_historymysql.rds_replication_status 테이블에 시간, 사용자 및 "set master" 작업을 기록합니다.

mysql.rds_set_external_master 프로시저는 다음 버전의 Amazon RDS MySQL에서 사용할 수 있습니다.

  • MySQL 5.5

  • MySQL 5.6

  • MySQL 5.7

예제

MySQL DB 인스턴스에서 다음 예제를 실행하면 Amazon RDS 외부에서 실행 중인 MySQL 인스턴스의 읽기 전용 복제본이 되도록 DB 인스턴스가 구성됩니다.

Copy
call mysql.rds_set_external_master( 'Externaldb.some.com', 3306, 'repl_user'@'mydomain.com', 'SomePassW0rd', 'mysql-bin-changelog.0777', 120, 0);

관련 주제