当前使用环境Centos6.9
mydumper是针对mysql数据库备份的一个轻量级第三方的开源工具,备份方式为逻辑备份,支持多线程,备份速度要比mysqldump快的多。
安装所需依赖
1 |
yum install make cmake pcre-devel openssl-devel glib2-devel zlib-devel gcc gcc-c++ mysql-devel -y |
下载mydumper包并编译安装
1 2 3 4 5 6 |
cd /usr/src wget --no-check-certificate https://launchpad.net/mydumper/0.9/0.9.1/+download/mydumper-0.9.1.tar.gz tar zxf mydumper-0.9.1.tar.gz cd mydumper-0.9.1 cmake . make && make install |
做个软链,以方便使用
1 2 |
ln -sv /usr/local/bin/mydumper /usr/bin/mydumper ln -sv /usr/local/bin/myloader /usr/bin/myloader |
使用格式
数据库备份:
1 |
mydumper -u username -h host -P port -p password -B database -o back_dir -t thread |
数据库恢复:
1 |
myloader -u username -h localhost -P port -p passwd -B database -d back_dir -t thread |
mydumper常用参数
-B,需要备份的数据库,不指定则备份所有库。
-T,需要备份的表。
-o,备份文件的输出目录。
-c,压缩输出文件,压缩后缀.gz。
-m,不备份表结构。
-t,线程数,默认为4。
-v,更多信息,0沉默, 1错误, 2警告, 3信息, 默认2
myloader常用参数
-d,要恢复的备份目录
-o,如果恢复的表存在,先DROP掉。
-B,要恢复的数据库名称。
-S,socket文件
-t,线程数,默认为4
-h,指定的mysql主机
-P,指定mysql端口
一些示例(注意命令行之间必须有空格):
备份所有库到/data/whsir/目录下
mydumper -u root -p 123456 -o /data/whsir/
备份whsir库到/data/whsir/目录下
mydumper -u root -p 123456 -B whsir -o /data/whsir/ -t 30
备份一个表
mydumper -u root -p 123456 -B whsir -T a_whsir -o /data/whsir/ -t 20
备份多个表并压缩
mydumper -u root -p 123456 -B whsir -T a_whsir,b_whsir -c -o /data/whsir/ -t 20
当前目录下自动生成备份时间的文件夹,不加-o参数时,自动生成的文件夹格式为export-20170616-093830
mydumper -u root -p 123456 -B whsir
不带表结构备份表
mydumper -u root -p 123456 -B whsir -T a_whsir -m
备份时,打印信息
mydumper -u root -p 123456 -B whsir -v 3 -o /data/whsir/
恢复数据库
myloader -u root -p 123456 -B whsir -d /data/whsir/ -t 30
覆盖恢复数据库
myloader -u root -p 123456 -o -B whsir -d /data/whsir/ -t 30
原文链接:MySQL备份软件mydumper编译安装及使用,转载请注明来源!