__tencentdb__를 작성하여 마이그레이션 작업 중 데이터 대조 정보를 기록합니다.__tencentdb__ 시스템 데이터베이스는 마이그레이션 작업이 끝난 후 삭제되지 않습니다.__tencentdb__시스템 데이터베이스는 단일 스레드 연결 대기 메커니즘을 사용하며 원본 데이터베이스의 저장 공간의 약 0.01%–0.1%인 매우 작은 공간을 차지합니다. 예를 들어, 원본 데이터베이스가 50G인 경우 __tencentdb__는 약 5K-50K가 됩니다. 따라서 원본 데이터베이스의 성능에 거의 영향을 미치지 않으며 리소스를 선점하지 않습니다.__tencentdb__ 데이터베이스를 생성해야 합니다.CREATE USER ’마이그레이션 계정’@’%’ IDENTIFIED BY ’마이그레이션 비밀번호’;GRANT SELECT,RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW DATABASES,SHOW VIEW,PROCESS ON *.* TO ’마이그레이션 계정’@’%’;//원본이 TDSQL for MySQL 데이터베이스인 경우 RELOAD 권한 부여를 위해 티켓을 제출해야 하며, 다른 시나리오의 경우 코드 인증을 참고하십시오GRANT INSERT, UPDATE, DELETE, DROP, SELECT, INDEX, ALTER, CREATE ON `__tencentdb__`.* TO '마이그레이션 계정'@'%';
information_schema, sysdb, test, sys, performance_schema, __tencentdb__, mysql과 같은 시스템 DB 테이블 및 사용자 정보는 마이그레이션할 수 없습니다.STATEMENT 형식의 Binlog문을 생성하면 마이그레이션이 실패됩니다.STATEMENT 형식의 Binlog 데이터를 원본 데이터베이스에 쓰지 마십시오.__tencentdb__를 삭제하지 마십시오.작업 유형 | 지원되는 SQL 작업 |
DML | INSERT, UPDATE, DELETE, REPLACE |
DDL | TABLE:CREATE TABLE, ALTER TABLE, DROP TABLE, TRUNCATE TABLE VIEW:CREATE VIEW, DROP VIEW INDEX:CREATE INDEX, DROP INDEX DATABASE:CREATE DATABASE, ALTER DATABASE, DROP DATABASE |
유형 | 환경 요건 |
원본 데이터베이스 요구 사항 | 원본 및 타깃 데이터베이스를 연결할 수 있어야 합니다. 데이터베이스 매개변수 요구 사항: table_row_format은 FIXED로 설정할 수 없습니다. 원본 및 대상 데이터베이스의 lower_case_table_names 변수 값은 동일해야 합니다. 대상 데이터베이스의 max_allowed_packet 매개변수는 4M 이상이어야 합니다. 원본 데이터베이스의 connect_timeout 변수는 10 이상이어야 합니다. Binlog 매개변수 요구사항: 원본 데이터베이스의 binlog_format 변수는 ROW로 설정해야 합니다. 원본 데이터베이스의 log_bin 변수는 ON으로 설정해야 합니다. 원본 데이터베이스의 binlog_row_image 변수는 FULL로 설정해야 합니다. v5.6 이상에서는 원본 데이터베이스의 gtid_mode 변수가 ON이 아닌 경우 WARNING이 발생합니다. gtid_mode를 활성화하는 것이 좋습니다. do_db 및 ignore_db를 설정할 수 없습니다. 원본 데이터베이스가 복제 데이터베이스인 경우 log_slave_updates 변수를 ON으로 설정해야 합니다. 최소 3일 동안 원본 데이터베이스의 Binlog를 보관하는 것이 좋습니다. 그렇지 않으면 체크포인트에서 작업을 재개할 수 없으며 실패합니다. 외래 키 종속성: 외래 키 종속성은 no action 또는 restrict 유형일 수 있습니다. 부분 테이블 마이그레이션 중에는 외래 키 종속성이 있는 테이블을 마이그레이션해야 합니다. |
타깃 데이터베이스에 대한 요구 사항 | 타깃 데이터베이스가 분산 데이터베이스인 경우 수동으로 분할된 테이블을 생성하고 shardkey를 미리 계획하는 것이 좋습니다. 그렇지 않으면 DTS는 원본 데이터베이스의 테이블 스타일을 기반으로 타깃 데이터베이스에 테이블을 만듭니다. 원본 데이터베이스가 독립 실행형 인스턴스인 경우 타깃 데이터베이스는 단일 테이블로 생성됩니다. 타깃 데이터베이스 버전은 원본 데이터베이스 버전보다 높거나 같아야 합니다. 대상 데이터베이스의 공간은 원본 데이터베이스에서 마이그레이션할 테이블 크기의 1.2배 이상이어야 합니다. 대상 데이터베이스는 원본 데이터베이스와 충돌하는 테이블을 가질 수 없습니다. |
기타 요구 사항 | 환경 변수 innodb_stats_on_metadata는 off로 설정해야 합니다. |
설정 항목 | 설명 |
원본 인스턴스 유형 | 원본 데이터베이스 유형을 선택합니다. 구매 후 변경할 수 없습니다. 본문은 ‘TDSQL for MySQL’를 선택합니다. |
원본 인스턴스 리전 | 원본 데이터베이스 리전을 선택합니다. |
타깃 인스턴스 유형 | 타깃 데이터베이스 유형을 선택합니다. 구매 후 변경할 수 없습니다. 본문은 ‘TDSQL for MySQL’을 선택합니다. |
타깃 인스턴스 리전 | 타깃 데이터베이스 리전을 선택합니다. |
사양 | 비즈니스 상황에 따라 마이그레이션 링크의 사양을 선택합니다. |
설정 유형 | 설정 항목 | 설명 |
작업 설정 | 작업 이름 | 쉬운 작업 식별을 위해 의미 있는 이름을 설정합니다. |
| 실행 모드 | 즉시 실행 및 예약 실행 지원: 즉시 실행은 작업 검증 통과 후 즉시 작업을 시작하고, 예약 실행은 작업 실행 시간을 설정하고 설정 시간이 되면 작업을 시작합니다. |
| 태그 | 태그는 다양한 차원의 범주별로 리소스를 관리하는 데 사용됩니다. 기존 태그가 요구 사항을 충족하지 않는 경우 콘솔로 이동하여 추가로 생성하십시오. |
원본 데이터베이스 설정 | 원본 데이터베이스 유형 | 구매 시 선택한 원본 데이터베이스 유형으로, 변경할 수 없습니다. |
| 리전 | 구매 시 선택한 원본 데이터베이스 리전으로, 변경할 수 없습니다. |
| 액세스 유형 | ‘데이터베이스’를 선택합니다. |
| 데이터베이스 인스턴스 | 원본 데이터베이스의 인스턴스 ID를 선택합니다. |
| 계정 | 특정 권한이 있어야 하는 원본 TDSQL for MySQL 데이터베이스의 계정입니다. |
| 비밀번호 | 원본 TDSQL for MySQL 데이터베이스의 비밀번호입니다. |
타깃 라이브러리 설정 | 타깃 데이터베이스 유형 | 구매 시 선택한 타깃 데이터베이스 유형으로, 변경할 수 없습니다. |
| 리전 | 구매 시 선택한 타깃 데이터베이스 리전으로, 변경할 수 없습니다. |
| 액세스 유형 | ‘데이터베이스’를 선택합니다. |
| 데이터베이스 인스턴스 | 대상 TDSQL for MySQL 인스턴스 ID를 선택합니다. |
| 계정 | 대상 TDSQL for MySQL 데이터베이스 계정으로, 특정 권한이 있어야 합니다. |
| 비밀번호 | 대상 TDSQL for MySQL 계정 비밀번호입니다. |

설정 항목 | 설명 |
마이그레이션 유형 | 시나리오에 따라 유형을 선택하십시오. 구조적 마이그레이션: 원본 데이터베이스의 데이터베이스 및 테이블과 같은 구조적 데이터가 마이그레이션됩니다. 전체 마이그레이션: 전체 데이터베이스가 마이그레이션됩니다. 마이그레이션된 데이터는 작업이 시작될 때만 원본 데이터베이스의 기존 콘텐츠가 되지만 작업이 시작된 후 원본 데이터베이스에 기록된 증분 데이터는 포함되지 않습니다. 전체 + 증분 마이그레이션: 마이그레이션된 데이터에는 작업이 시작될 때 원본 데이터베이스의 기존 콘텐츠와 작업이 시작된 후 원본 데이터베이스에 기록된 증분 데이터가 포함됩니다. 마이그레이션 중에 원본 데이터베이스에 데이터 쓰기가 있고 논스톱 방식으로 원활하게 데이터를 마이그레이션하려면 이 옵션을 선택하십시오. |
객체 마이그레이션 | 전체 인스턴스: information_schema, mysql, performance_schema 및 sys와 같은 시스템 데이터베이스를 제외한 전체 데이터베이스 인스턴스를 마이그레이션합니다. 지정된 객체: 지정된 객체를 마이그레이션합니다. |
객체 지정 | 원본 데이터베이스 객체에서 마이그레이션할 객체를 선택하고 선택한 객체 상자로 이동합니다. |
피드백