mydumper及myloader用法

mydumper及myloader用法

mydumper -h 192.168.182.128 -u source -p 123456 -B source -t 8 -r 10000 -c --less-locking -v 3 -D -L /test/log/mydumper.log -o /test/data/

myloader -h 192.168.182.128 -u target -p 123456 -B target -e -t 8 -d /test/data/0/ --overwrite-tables -v 3

mydumper备份的速度、myloader的恢复速度,比mysql自己的工具执行速度快很多,大大减少业务的处理时间。

1.安装

# yum install glib2-develmysql-devel zlib-devel pcre-devel -y
# wget https://launchpadlibrarian.net/225370879/mydumper-0.9.1.tar.gz
# cmake ./
#make && make install


yum -y install glib2-devel mysql-devel zlib-devel pcre-devel cmake gcc-c++ git

cd /usr/MyWorkSpace/
git clone https://github.com/maxbube/mydumper.git
cd mydumper
//注意下面包含'.'
cmake .
make && make install
安装完成后生成两个二进制文件mydumper和myloader位于/usr/local/bin目录下

2.mydumper及myloader命令的参数

mydumper参数:

序号参数解释
1-B, --database要备份的数据库,不指定则备份所有库
2-T, --tables-list需要备份的表,名字用逗号隔开
3-o, --outputdir备份文件输出的目录
4-s, --statement-size生成的insert语句的字节数,默认1000000
5-r, --rows将表按行分块时,指定的块行数,指定这个选项会关闭 --chunk-filesize
6-F, --chunk-filesize将表按大小分块时,指定的块大小,单位是 MB
7-c, --compress压缩输出文件
8-e, --build-empty-files如果表数据是空,还是产生一个空文件(默认无数据则只有表结构文件)
9-x, --regex是同正则表达式匹配 ‘db.table’
10-i, --ignore-engines忽略的存储引擎,用逗号分割
11-m, --no-schemas不备份表结构
12-k, --no-locks不使用临时共享只读锁,使用这个选项会造成数据不一致
13–less-locking减少对InnoDB表的锁施加时间(减少锁等待的时间)
14-l, --long-query-guard设定阻塞备份的长查询超时时间,单位是秒,默认是60秒(超时后默认mydumper将会退出)
15–kill-long-queries杀掉长查询 (不退出)
16-b, --binlogs导出binlog
17-D, --daemon启用守护进程模式,守护进程模式以某个间隔不间断对数据库进行备份
18-I, --snapshot-intervaldump快照间隔时间,默认60s,需要在daemon模式下
19-L, --logfile使用的日志文件名(mydumper所产生的日志), 默认使用标准输出
20–tz-utc跨时区是使用的选项,不解释了
21–skip-tz-utc同上
22–use-savepoints使用savepoints来减少采集metadata所造成的锁时间,需要 SUPER 权限
23–success-on-1146如果表不存在,则不增加错误计数和警告
24-h, --host连接的主机名
25-u, --user备份所使用的用户
26-p, --password备份用户的密码
27-P, --port端口
28-S, --socket使用socket通信时的socket文件
29-t, --threads开启的备份线程数,默认是4
30-C, --compress-protocol压缩与mysql通信的数据
31-V, --version显示版本号
32-v, --verbose输出信息模式, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 默认为 2

myloader参数:

序号参数解释
1-d, --directory备份文件的目录
2-q, --queries-per-transaction每次事物执行的查询数量,默认是1000
3-o, --overwrite-tables如果要恢复的表存在,则先drop掉该表,使用该参数,需要备份时候要备份表结构
4-B, --database需要还原的数据库
5-e, --enable-binlog启用还原数据的二进制日志
6-h, --host连接的主机名
7-u, --user备份所使用的用户
8-p, --password备份用户的密码
9-P, --port端口
10-S, --socket使用socket通信时的socket文件
11-t, --threads开启的备份线程数,默认是4
12-C, --compress-protocol压缩协议
13-V, --version显示版本
14-v, --verbose输出模式, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 默认为2

3.mydumper输出文件说明:

metadata:元数据,记录备份开始和结束时间,以及binlog日志文件位置。
table data:每个表一个文件
table schemas:表结构文件
daemon mode:在这个模式下,有五个目录0,1,binlogs,binlog_snapshot,last_dump。
备份目录是0和1,间隔备份,如果mydumper因某种原因失败而仍然有一个好的快照,
当快照完成后,last_dump指向该备份。

4.mydumper用例

备份hellodb数据库到当前目录下

# mydumper -uroot -proot -B hellodb -o ./
# ll  是每个表单独备份的
# cat metadata  可以看到

以守护进程方式每30分钟备份一次


# mydumper -uroot -proot -B hellodb-o /home/data/bak -D -I 30
 


数据库的还原覆盖操作

# myloader -o -B hellodb -o -d/home/data/bak/last_dump

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值