mysqlbinlog远程同步binlog

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sun_ashe/article/details/82869240

mysqlbinlog远程同步binlog

mysqlbinlog是dba经常使用的工具,它常用在解析mysqld产生的binlog文件,relay log文件。但是它还有另外一个功能,就是远程获取binlog,今天要分析的就是这个功能。

功能简介

可以通过如下命令进行binlog同步

mysqlbinlog \
--read-from-remote-server \ #指定远程获取binlog模式
--raw \ #指定存储类型为二进制
--host=127.0.0.1 \ #远程服务器地址
--port=13307 \ #端口 
--user=rpl \ #用户
--password=rpl \ #密码
--stop-never \ #持续同步
--result-file=/data/binlog_backup/ \ #同步目录
mysql-bin.000001 #起始binlog位置

也可以添加如下参数,指定过滤掉的事务

--exclude-gtids='7175672e-b7c4-11e7-ab82-eedc81f44372:1-3' 

功能扩展

对于如上所示的功能,有如下不满意的地方

1,主从复制模式下,在master上通过show slave hosts是可以看到哪些从机连进来的,但是mysqlbinlog的复制却看不到,这是因为缺少了register的过程。

2,没有自动重连机制,端口后主动退出。

3,不支持半同步模式

4,不支持多通道,单个进程只能同步一个主上的binlog。

如果想让它做更多的工作,需要更改代码了,有时间发个版本出来。

猜你喜欢

转载自blog.csdn.net/sun_ashe/article/details/82869240