Datastream을 사용하면 자체 관리형 MySQL 데이터베이스에서 BigQuery 또는 Cloud Storage와 같은 지원되는 대상으로 변경 데이터 캡처 (CDC) 업데이트를 스트리밍할 수 있습니다. 소스를 준비하려면 보관 기간이 7일인 전체 행 기반 바이너리 로깅을 구성하고 복제 권한이 있는 Datastream 사용자를 만듭니다. MariaDB, MySQL용 Percona Server, Alibaba Cloud PolarDB와 같은 호환되는 데이터베이스에도 이 구성을 사용할 수 있습니다.
바이너리 로그의 구성 및 보관 기간 확인
다음 MySQL 명령어를 입력하여 바이너리 로그가 올바르게 구성되어 있는지 확인합니다.
SHOW GLOBAL VARIABLES LIKE '%binlog_format%';binlog_format변수 값이ROW로 설정되었는지 확인합니다. Datastream은MIXED또는STATEMENT바이너리 로그 형식을 지원하지 않습니다.다음 MySQL 명령어를 입력하여 바이너리 로그의 행 형식이
FULL로 설정되어 있는지 확인합니다.SHOW GLOBAL VARIABLES LIKE 'binlog_row_image';MySQL 버전 8.0 이상의 경우 다음 MySQL 명령어를 입력하여
binlog_row_value_options변수가 빈 값으로 설정되어 있는지 확인합니다.SHOW GLOBAL VARIABLES LIKE 'binlog_row_value_options';다음 MySQL 명령어를 입력하여 바이너리 로그의 복제본 업데이트 옵션이
ON으로 설정되어 있는지 확인합니다.SHOW GLOBAL VARIABLES LIKE 'log_replica_updates';8.0.26 이전의 MySQL 버전에서는 다음 명령어를 대신 입력합니다.
SHOW GLOBAL VARIABLES LIKE 'log_slave_updates';다음 MySQL 명령어를 입력하여 바이너리 로그의 보관 기간이
604800초 (7일)로 설정되어 있는지 확인합니다.SHOW GLOBAL VARIABLES LIKE 'binlog_expire_logs_seconds';8.0.3 이전의 MySQL 버전에서는 다음 명령어를 대신 입력합니다.
SHOW GLOBAL VARIABLES LIKE 'expire_logs_days';
Datastream 사용자 만들기
Datastream 사용자를 만들려면 다음 MySQL 명령어를 입력합니다.
CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD'; GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%'; FLUSH PRIVILEGES;
다음 단계
- MySQL 소스에서 Datastream의 작동 방식 자세히 알아보기