[Linux] mydumper : mysql ¿ÀǼҽº thread ¹é¾÷ À¯Æ¿¸®Æ¼
http://ehostidc.co.kr/center/EH050402.php?no=177723&page=6&choose=tit¡¦ (301)https://blog.naver.com/goethe1/221626322607 (271)
mydumper
1. 소개 : mysql thread dump 오픈소스 유틸리티
2. 정식 사이트
https://launchpad.net/mydumper
3. 사용법 및 소개 사이트
https://www.percona.com/blog/2015/11/12/logical-my...
4. 설치
a. centos 설치
https://twindb.com/mydumper-rpm-for-centosrhel/
# yum install https://twindb.com/twindb-release-latest.noarch.rpm
# yum install mydumper
b. ubuntu 설치
# apt install mydumper
5. backup 및 옵션
# mydumper -u root -p 패스워드 -k -c -o /opt/dump/
백업 옵션--threads=6 default threads 는 4, 동시에 몇개의 table 을 백업/복구할 것인지에 대한 부분-t cpu-core 로 셋팅시 최대 속도-v, --verbose Verbosity of output, 0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2-L 로그 저장 -L /경로/파일명-k no-lock-c compress-o 저장 폴더 지정
추가옵션-d, --no-data Do not dump table data
-G, --triggers Dump triggers
-E, --events Dump events
-R, --routines Dump stored procedures and functions
triggers, evnets, procedures, functions 전체 백업시
# mydumper -u root -p 패스워드 -G -E -R -k -c -o /opt/mysqlbackup/
6. 백업 결과
root@control:/opt# mydumper -u root -p 패스워드 -v 3 -G -E -R -k -c -o /opt/mysqlbackup/
** Message: Connected to a MySQL server
** (mydumper:27305): WARNING
**: Executing in no-locks mode, snapshot will notbe consistent
** Message: Started dump at: 2018-07-19 23:48:34
** Message: Multisource slave detected.
** Message: Thread 1 connected using MySQL connection ID 10196
** Message: Thread 2 connected using MySQL connection ID 10197
** Message: Thread 3 connected using MySQL connection ID 10198
** Message: Thread 4 connected using MySQL connection ID 10199
** Message: Thread 1 dumping data for `mysql`.`column_stats`
** Message: Thread 4 dumping data for `mysql`.`columns_priv`
** Message: Thread 3 dumping data for `mysql`.`db`
** Message: Thread 2 dumping data for `mysql`.`event`
** Message: Empty table mysql.event
** Message: Thread 2 dumping data for `mysql`.`func`
** Message: Empty table mysql.func
** Message: Thread 2 dumping data for `mysql`.`help_category`
** Message: Empty table mysql.column_stats
** Message: Empty table mysql.columns_priv
** Message: Thread 1 dumping data for `mysql`.`help_keyword`
** Message: Thread 4 dumping data for `mysql`.`help_relation`
** Message: Thread 3 dumping data for `mysql`.`help_topic`
** Message: Thread 2 dumping data for `mysql`.`host`
** Message: Thread 1 dumping data for `mysql`.`index_stats`
** Message: Thread 4 dumping data for `mysql`.`plugin`
** Message: Empty table mysql.index_stats
** Message: Empty table mysql.host
** Message: Empty table mysql.plugin
실제 백업 결과물
테이블별로 schema 데이터와 실제데이터 2개의 파일로 압축 생성
-rw-r--r-- 1 root root 191 Jul 20 04:18 glance.alembic_version-schema.sql.gz
-rw-r--r-- 1 root root 161 Jul 20 04:18 glance.alembic_version.sql.gz
-rw-r--r-- 1 root root 357 Jul 20 04:18 glance.image_locations-schema.sql.gz
-rw-r--r-- 1 root root 241 Jul 20 04:18 glance.image_locations.sql.gz
-rw-r--r-- 1 root root 385 Jul 20 04:18 glance.image_members-schema.sql.gz
-rw-r--r-- 1 root root 352 Jul 20 04:18 glance.image_properties-schema.sql.gz
-rw-r--r-- 1 root root 443 Jul 20 04:18 glance.images-schema.sql.gz
-rw-r--r-- 1 root root 286 Jul 20 04:18 glance.images.sql.gz
-rw-r--r-- 1 root root 324 Jul 20 04:18 glance.image_tags-schema.sql.gz
-rw-r--r-- 1 root root 337 Jul 20 04:18 glance.metadef_namespace_resource_types-schema.sql.gz
-rw-r--r-- 1 root root 336 Jul 20 04:18 glance.metadef_namespaces-schema.sql.gz
-rw-r--r-- 1 root root 356 Jul 20 04:18 glance.metadef_objects-schema.sql.gz
-rw-r--r-- 1 root root 339 Jul 20 04:18 glance.metadef_properties-schema.sql.gz
-rw-r--r-- 1 root root 276 Jul 20 04:18 glance.metadef_resource_types-schema.sql.gz
-rw-r--r-- 1 root root 318 Jul 20 04:18 glance.metadef_tags-schema.sql.gz
-rw-r--r-- 1 root root 214 Jul 20 04:18 glance.migrate_version-schema.sql.gz
-rw-r--r-- 1 root root 214 Jul 20 04:18 glance.migrate_version.sql.gz
-rw-r--r-- 1 root root 85 Jul 20 04:18 glance-schema-create.sql.gz
-rw-r--r-- 1 root root 247 Jul 20 04:18 glance.task_info-schema.sql.gz
7. 복구 command
# myloader -u root -p 패스워드 -o -d /opt/dump/
8. 기타 사항
# cpu core 수 만큼 thread 설정시 백업 및 복구시 mysqldump 대비 1/4 이하의 시간
# mysqldump 기준 10G 이상의 디비를 백업 및 복구를 빨리 하고자 할 경우 사용
# innodb 에서 최적의 효율