• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 4. MySQL 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 1. Replication 구성
    2. Replication 구현
    3. Replication 솔루션
    1. 백업을 위해 Replication 사용
    2. 다른 Master 및 Slave 스토리지 엔진에서 복제
    3. 확장(Scale-Out)을 위한 복제
    4. 다른 데이터베이스를 다른 Slave에 복제
    5. Replication 성능을 향상
    6. 장애 발생시 Master 전환
    7. SSL을 사용하여 Replication 설정
    8. Semisynchronous Replication(반동기 복제)
    9. 복제 지연(Delayed Replication)
    4. Replication Notes and Tips
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

17.3.7 SSL을 사용하여 Replication 설정

복제 중에 필요한 바이너리 로그의 전송을 암호화하기 위해 SSL을 사용하려면 마스터와 슬레이브 모두 SSL 네트워크 연결을 지원해야합니다. 어느 호스트가 SSL 연결을 지원하지 않는 경우 (SSL 용으로 컴파일 또는 구성되지 않았기 때문에), SSL 연결 기반의 복제는 실현 될 수 없습니다.

SSL 연결을 사용하는 복제를 설정하는 것은 SSL을 사용하는 서버와 클라이언트를 설치하는 것과 비슷합니다. 마스터에서 사용할 수있는 적절한 보안 인증서 및 각 슬레이브에서 유사한 증명서 (같은 인증 기관에서)를 취득 (또는 작성)해야합니다.

서버와 클라이언트 SSL 연결을위한 설정시 대한 자세한 내용은 섹션 6.3.10.2 "SSL을 사용하는 MySQL의 구성" 을 참조하십시오.

마스터에서 SSL을 사용하려면 적절한 인증서를 만들거나 가져온 후 마스터 my.cnf 파일의 [mysqld] 섹션에서 마스터 구성에 다음 구성 옵션을 추가해야합니다 .

[mysqld]
ssl-ca=cacert.pem
ssl-cert=server-cert.pem
ssl-key=server-key.pem

인증서 경로는 상대도 절대라도 괜찮습니다. 이를 위해서는 전체 경로를 항상 사용하는 것이 좋습니다.

옵션은 다음과 같습니다.

  • ssl-ca 는 인증 기관 (CA) 인증서를 식별합니다.

  • ssl-cert 는 서버 공개 키를 식별합니다. 이를 클라이언트로 전송하고 그에 포함 된 CA 인증서와 비교하여 인증 할 수 있습니다.

  • ssl-key 는 서버 비밀 키를 식별합니다.

슬레이브는 SSL 정보를 설정하는 두 가지 옵션을 사용할 수 있습니다. 슬레이브의 my.cnf 파일의 [client] 섹션에 슬레이브 인증서를 추가하거나 CHANGE MASTER TO 문을 사용하여 SSL 정보를 명시 적으로 지정할 수 있습니다.

  • 옵션 파일을 사용하여 슬레이브 인증서를 추가하려면 슬레이브의 my.cnf 파일의 [client] 섹션에 다음 줄을 추가합니다.

    [client]
    ssl-ca=cacert.pem
    ssl-cert=client-cert.pem
    ssl-key=client-key.pem

    슬레이브가 마스터에 연결하지 않도록 --skip-slave-start 옵션을 사용하여 슬레이브 서버를 다시 시작합니다. SSL 연결을 사용하는 MASTER_SSL 옵션을 사용하여 마스터 구성을 지정하는 CHANGE MASTER TO 를 사용합니다.

    mysql> CHANGE MASTER TO
        -> MASTER_HOST='master_hostname',
        -> MASTER_USER='replicate',
        -> MASTER_PASSWORD='password',
        -> MASTER_SSL=1;
    
  • CHANGE MASTER TO 문을 사용하여 SSL 인증서 옵션 지정하려면 SSL 옵션을 추가합니다.

    mysql> CHANGE MASTER TO
        -> MASTER_HOST='master_hostname',
        -> MASTER_USER='replicate',
        -> MASTER_PASSWORD='password',
        -> MASTER_SSL=1,
        -> MASTER_SSL_CA = 'ca_file_name',
        -> MASTER_SSL_CAPATH = 'ca_directory_name',
        -> MASTER_SSL_CERT = 'cert_file_name',
        -> MASTER_SSL_KEY = 'key_file_name';
    

마스터 정보가 업데이트 된 후 슬레이브 복제 프로세스를 시작합니다.

mysql> START SLAVE;

SHOW SLAVE STATUS 문을 사용하여 SSL 연결이 성공적으로 구축 된 것을 확인할 수 있습니다.

CHANGE MASTER TO 문에 대한 자세한 내용은 섹션 13.4.2.1 "CHANGE MASTER TO 구문" 을 참조하십시오.

복제 중에 SSL 연결의 사용을 적용하는 경우 REPLICATION SLAVE 권한의 사용자를 만들고 그 사용자에 REQUIRE SSL 옵션을 사용합니다. 예 :

mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';
mysql> GRANT REPLICATION SLAVE ON *.*
    -> TO 'repl'@'%.mydomain.com' REQUIRE SSL;

계정이 이미 존재하는 경우이 문 그것에 REQUIRE SSL 을 추가 할 수 있습니다.

mysql> GRANT USAGE ON *.*
    -> TO 'repl'@'%.mydomain.com' REQUIRE SSL;


서울시 강남구 영동대로 602 6층
TEL: 02-6061-0006  /  E: csr@mysqlkorea.com
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved