CDC용 Amazon RDS MySQL 데이터베이스 구성

Datastream을 사용하면 Amazon RDS for MySQL 데이터베이스에서 지원되는 대상(예: BigQuery 또는 Cloud Storage)으로 변경 데이터 캡처(CDC) 업데이트를 스트리밍할 수 있습니다. 소스 인스턴스를 준비하려면 매개변수 그룹 및 선택적 읽기 복제본을 구성하고, 바이너리 로그 보관 기간을 설정하고, Datastream 사용자를 만듭니다.

매개변수 그룹 만들기

  1. Amazon RDS 대시보드를 실행합니다.

  2. **탐색 창** 에서 **매개변수 그룹** 을 클릭합니다.

  3. 매개변수 그룹 만들기 를 클릭합니다. 매개변수 그룹 만들기 페이지가 나타납니다.

  4. 데이터베이스와 일치하는 데이터베이스 계열을 선택하고 매개변수 그룹의 이름과 설명을 입력합니다.

  5. 만들기 를 클릭합니다.

  6. 새로 만든 매개변수 그룹의 왼쪽에 있는 체크박스를 선택합니다.

  7. 매개변수 그룹 작업에서 수정을 클릭합니다.

  8. 다음 표를 사용하여 그룹의 매개변수를 설정합니다.

    • binlog 기반 복제:

      매개변수값
      binlog_formatROW
      log_bin_use_v1_row_events1
      read_only0
      net_read_timeout3600
      net_write_timeout3600
      wait_timeout86400
    • GTID 기반 복제:

      매개변수값
      binlog_formatROW
      log_bin_use_v1_row_events1
      read_only0
      net_read_timeout3600
      net_write_timeout3600
      wait_timeout86400
      expire-logs-days7
      binlog_row_imageFULL
      max_allowed_packet1G (권장 값)
      log-replica-updates1
      enforce-gtid-consistencyON
      gtid_mode

      ON

      enforce-gtid-consistency를 ON으로 설정한 후에만 이 매개변수를 ON으로 설정할 수 있습니다. 일반적으로 gtid_mode는 다음 값을 가질 수 있습니다.
      • OFF
      • OFF_PERMISSIVE
      • ON_PERMISSIVE
      • ON
      gtid_mode 매개변수의 값은 한 번에 한 단계씩만 변경할 수 있습니다. 예를 들어 현재 모드가 OFF로 설정되어 있는 경우 다음 단계를 따르세요.
      1. 설정을 OFF_PERMISSIVE로 변경합니다.
      2. 설정을 ON_PERMISSIVE로 변경합니다.
      3. 설정을 ON으로 변경합니다.
      자세한 내용은 MySQL 문서를 참조하세요.
  9. 변경사항 저장 을 클릭합니다.

읽기 복제본 만들기

  1. Amazon RDS 대시보드를 실행합니다.

  2. **탐색 창** 에서 **데이터베이스** 를 클릭합니다.

  3. Datastream을 연결할 기본 데이터베이스 인스턴스를 선택합니다.

  4. 작업 버튼을 펼친 다음 읽기 복제본 만들기 를 클릭합니다.

  5. 필요에 따라 읽기 복제본을 구성합니다.

  6. 읽기 복제본 만들기 를 클릭합니다.

소스 데이터베이스 및 읽기 복제본 구성

기본 서버에서 직접 복제하도록 선택한 경우 다음 단계에 따라 소스 데이터베이스를 구성합니다.

읽기 복제본을 사용하도록 선택한 경우 다음 단계에 따라 소스 데이터베이스와 읽기 복제본을 모두 구성합니다.

  1. Amazon RDS 대시보드를 실행합니다.

  2. **탐색 창** 에서 **데이터베이스** 를 클릭합니다.

  3. 구성할 인스턴스를 선택한 후 수정 을 클릭합니다.

  4. 추가 구성 섹션으로 이동합니다.

  5. 생성한 매개변수 그룹을 선택합니다.

  6. 백업 보관 기간을 7일로 설정합니다.

  7. 계속을 클릭합니다.

  8. 수정 예약에서 즉시 적용을 선택합니다.

매개변수 그룹이 데이터베이스 인스턴스에 할당되어 있는지 확인

  1. Amazon RDS 대시보드를 실행합니다.

  2. 탐색 창에서 데이터베이스를 클릭한 다음 데이터베이스 인스턴스를 선택합니다.

  3. 구성 탭을 클릭합니다.

  4. 생성한 매개변수 그룹이 표시되고 상태가 pending-reboot인지 확인합니다.

  5. 데이터베이스 인스턴스를 재부팅하여 구성을 완료합니다. 인스턴스를 재부팅하려면 다음 단계를 따르세요.

    1. 탐색 창에서 인스턴스를 클릭합니다.
    2. 데이터베이스 인스턴스를 선택합니다.
    3. 인스턴스 작업 메뉴에서 재부팅 을 선택합니다.

바이너리 로그 보관 기간 설정

  1. 다음 MySQL 명령어를 입력합니다.

    call mysql.rds_set_configuration('binlog retention hours', 168);
  2. 변경사항이 적용되도록 MySQL 서버를 다시 시작합니다.

Datastream 사용자 만들기

  1. Datastream 사용자를 만듭니다.

    CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
  2. 사용자에게 다음 권한을 부여합니다.

    GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%';
    GRANT EXECUTE ON PROCEDURE mysql.rds_show_configuration TO 'datastream'@'%';
    FLUSH PRIVILEGES;

다음 단계

  • MySQL 소스에서 Datastream의 작동 방식 자세히 알아보기