mysql数据恢复时显示多线程恢复_MySQL多线程备份恢复工具mydumper,myloder

mydumper是多线程备份工具,默认开启4个线程,比mysqldump的速度更快

mydumper备份时,数据和表结构是分开的,比如备份test表时,会生成test.sql文件和test.schema.sql文件。

myloader导数据的时候默认不会记录二进制日志,即使你的sql_log_bin=on.

准备安装介质:

下载mydumper-0.6.2.tar.gz

安装依赖包:

# yum install glib2-devel mysql-devel zlib-devel pcre-devel

编译安装

# tar zxvf mydumper-0.6.2.tar.gz

# cd mydumper-0.6.2

# mkdir bin

# cd bin

# cmake ../

# make

# make install

安装好后可以看到/usr/local/bin目录下面多了mydumper和myloader两个命令

# ll /usr/local/bin/

total 188

-rwxr-xr-x 1 root root 132868 Aug  3 22:51 mydumper

-rwxr-xr-x 1 root root  47491 Aug  3 22:51 myloader

# ./mydumper  --database=test --outputdir=/data/backup/test

./mydumper: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory

创建软链接即可解决这个报错:

# ln -s /usr/local/mysql/lib/libmysqlclient.so.18/usr/lib/

# ldconfig -v

导出:

# mydumper  --database=test --outputdir=/data/backup/test

导入:

#  myloader  -B test  -d /data/backup/test

利用备份建从库:

cd /data/backup/test

里面有一个metadata文件,这个文件记录的是当前的binlog文件及pos,可以使用这个信息搭建从库

mydumper参数介绍:

-B, --database              备份数据库

-T, --tables-list           备份表列表,多个表以“,”逗号分隔

-o, --outputdir             指定备份目录

-s, --statement-size        insert长度,单位是byte, default 1000000,这个参数不能太小,不然会报 Row bigger than statement_size for tools.t_serverinfo

-r, --rows                  分割表,多少行记录为一个chunk. 默认是off的

-F, --chunk-filesize        分割表,以多个文件备份,单位是MB

-c, --compress              压缩备份

-e, --build-empty-files     如果表没有数据,还是创建这个文件

-x, --regex                 正则匹配数据库、表,如db.table1

-i, --ignore-engines        忽略指定引擎的表

-m, --no-schemas            不备份表结构

-k, --no-locks              不加临时的share read lock,这个可能会造成数据不一致

--less-locking              innodb表时,最小时间lock

-l, --long-query-guard      设置最长查询时间,默认是60s

-K, --kill-long-queries     将长查询进行杀掉

-D, --daemon                开启守护进程模式

-I, --snapshot-interval     快照时间,默认是60s

-L, --logfile               日志文件,默认是标准输出

--tz-utc                    设置时区,只有备份应用到不同时区的时使用,默认是 --skip-tz-utc是关闭的.

--skip-tz-utc

--use-savepoints            Use savepoints to reduce metadata locking issues, needs SUPER privilege

--success-on-1146           Not increment error count and Warning instead of Critical in case of table doesn't exist

--lock-all-tables           Use LOCK TABLE for all, instead of FTWRL

-h, --host                  主机

-u, --user                  用户

-p, --password              密码

-P, --port                  端口

-S, --socket                socket文件

-t, --threads               并发线程数,默认是4

-C, --compress-protocol     Use compression on the MySQL connection

-V, --version               Show the program version and exit

-v, --verbose               Verbosity of output, 0 = silent, 1 = errors, 2 = warnings, 3 = info, default 2

本文转自 emma_cql 51CTO博客,原文链接:http://blog.51cto.com/chenql/1681643

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值