Mysql & Maria/admin

percona toolkit (pt-table-checksum)

dbavayne 2024. 11. 19. 20:56

master 와 slave 간

데이터 일관성 체크를 위한 툴중 하나로 해당 툴 테스트 진행내역 공유한다.

 

부하 발생이 있을 수 있으므로 운영시간 외에 실행을 권장한다.

일반적으로 master DB에서 실행해야 한다. 

실행 원리 자체가

  • 마스터에서 실행하여 모든 테이블의 체크섬을 계산
  • 슬레이브로 복제를 통해 체크섬 비교

 

slave DB에서는 역방향으로 체크할 수 없다.

 

기본 실행 명령

# 기본실행 명령어
pt-table-checksum \
    -h 마스터호스트 \
    -u 사용자 \
    -p 패스워드
    
# 특정 데이터베이스만 체크
pt-table-checksum \
    --databases=mydb \
    --tables=users,orders

# 대규모 데이터 최적화
pt-table-checksum \
    --chunk-size=1000 \
    --max-load="Threads_running=50"
    
# 2. 상세 불일치 내역 분석
mysqldbcompare \
    --server1=master \
    --server2=slave \
    데이터베이스명
    

pt-table-checksum \
    --chunk-size-limit=2.0 \
    --max-load="Threads_running=30" \
    --critical-load="Threads_running=60"

 

 

pt-table-checksum --user=root --password='Test!231' --host=192.168.100.179 --no-check-binlog-format 

 

checksum 결과

 

TS:
체크섬 시간
ERRORS:
오류 횟수
DIFFS:
데이터
불일치
발견 횟수
ROWS:
전체 행 수
DIFFS_ROWS
불일치
건수
CHUNKS:
체크섬
수행 청크(분할) 수
SKIPPED:
건너뛴
행 수
TIME:
체크섬
수행 시간
TABLE:
검사 대상 테이블

 

 

case 1) master에는 존재하고 slave에는 없는 테이블 

 

 

case2) master 와 slave의 건수가 다를때 

 

test 테이블의 건수가 7개 다름을 check

 

master 엔 8개 slave엔 5개

 

test 테이블의 건수가 3개 다름을 check

'Mysql & Maria > admin' 카테고리의 다른 글

SHOW SLAVE STATUS  (0) 2024.12.03
replication 깨진 후 bin log 복구  (2) 2024.12.03
mysql 5.7 replication 구성  (0) 2024.11.19
mysql 모니터링 관련  (0) 2024.10.24
percona toolkit 설치  (0) 2024.09.14