728x90
반응형
AWS에 DMS가 있긴 하지만 percona를 사용하여 옮길 수도 있다.
AWS에서 EC2 생성 후 percona-toolkit 설치
ssh tunnel로 해당 ec2 접속
$ sudo yum update
$ yum install percona-toolkit
-- 위 명령어가 실행되지 않을 경우 밑에 코드 실행
$ yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
-- https://www.percona.com/doc/percona-server/5.7/installation/yum_repo.html
$ yum list | grep percona
-- yum list 확인
- percona option 등 명령어 확인 → https://www.percona.com/doc/percona-toolkit/LATEST/pt-table-sync.html
pt-table-sync
DESCRIPTION pt-table-sync does one-way and bidirectional synchronization of table data. It does not synchronize table structures, indexes, or any other schema objects. The following describes one-way synchronization. “BIDIRECTIONAL SYNCING” is describe
www.percona.com
테스트
# 명령어
$ pt-table-sync \
--execute \
h={RDS 엔드포인트},u={user},p='{password}' \ -> 소스 테이블
h={RDS 엔드포인트},u={user},p='{password}' \ -> 대상 테이블
--databases {schema} \
--tables {table} \
--verbose \ -> 프린트 같은 옵션
(--dry-run -> 넣어주면 확인만 하고 실제 실행은 하지 않음)
dry-run 옵션을 넣어서 양쪽 접속이 되는지 먼저 확인한다.
# DELETE REPLACE INSERT UPDATE ALGORITHM START END EXIT DATABASE.TABLE
# 0 0 0 0 Chunk 15:54:27 15:54:27 0 test
# DELETE REPLACE INSERT UPDATE ALGORITHM START END EXIT DATABASE.TABLE
# 0 0 0 2 Chunk 11:24:23 11:24:53 2 test
# 30초
# DELETE REPLACE INSERT UPDATE ALGORITHM START END EXIT DATABASE.TABLE
# 0 0 1340 10878 Chunk 11:27:10 11:28:36 2 test
# 1분 26초
# DELETE REPLACE INSERT UPDATE ALGORITHM START END EXIT DATABASE.TABLE
# 36464 0 0 2 Chunk 11:31:03 11:31:38 2 test
# 35초
# AWS DMS와 같은 조건으로 truncate 진행 후 INSERT test
# DELETE REPLACE INSERT UPDATE ALGORITHM START END EXIT DATABASE.TABLE
# 0 0 174752 0 Chunk 13:51:19 14:28:11 2 test
# 35분
나쁘진 않다. 그런데 .....
# DELETE REPLACE INSERT UPDATE ALGORITHM START END EXIT DATABASE.TABLE
# 62 0 510 175443 Chunk 10:28:02 18:47:09 2 test
8시간..19분..
아마 test 용량이 커서 그런듯..
데이터의 변경사항 (신규,삭제,업데이트) 의 개수가 많지 않다면 사용해도 괜찮은데
내가 사용한 테이블은 전체 업데이트가 한번 일어난다.. 사용목적에 맞게 DMS든 percona든 사용하면 좋을것 같다.
728x90
반응형
'개발 > PERCONA' 카테고리의 다른 글
Mysql 무중단 index 명령어 (2) | 2022.11.22 |
---|