mysql bing logo_mysql binglog server的设置方法【原创】

MySQL备份数据都是MySQL备份+binlog,这样才能保证数据的完整性。下面就是利用mysqlbinlog搭建mysql binlog server,可以把binlog传到远程存储上。

试验环境

MySQL binlog 源服务器:10.72.16.112

MySQL binlog server目的服务器:10.72.16.50

因为需要把10.72.16.112的binlog传到10.72.16.50上,在10.72.16.50执行

mysqlbinlog --read-from-remote-server --raw --host=10.72.16.112 --port=3306 --user=repl --password=密码 --stop-never mysql-bin.000006

参数说明如下:

--read-from-remote-server:用于备份远程服务器的binlog。如果不指定该选项,则会查找本地的binlog。

--raw:binlog日志会以二进制格式存储在磁盘中,如果不指定该选项,则会以文本形式保存。

--user:复制的MySQL用户,只需要授予REPLICATION SLAVE权限。

--stop-never:mysqlbinlog可以只从远程服务器获取指定的几个binlog,也可将不断生成的binlog保存到本地。指定此选项,代表只要远程服务器不关闭或者连接未断开,mysqlbinlog就会不断的复制远程服务器上的binlog。

mysql-bin.000006:代表从哪个binlog开始复制,一般会从mysql-bin.000001开始

--stop-never-slave-server-id:在备份远程服务器的binlog时,mysqlbinlog本质上就相当于一个从服务器,该选项就是用来指定从服务器的server-id的。默认为-1。

--to-last-log:代表mysqlbinlog不仅能够获取指定的binlog,还能获取其后生成的binlog,获取完了,才终止。如果指定了--stop-never选项则会隐式打开--to-last-log选项。

提示:备份的目录是命令所运行的目录

有个问题就是mysqlbinlog断掉后,只能重新运行并指定从哪个binlog开始同步。写个shell监控mysqlbinlog进程,如下:

#!/bin/bash

# 将日期记入日志date

# 由于磁盘空间有限,删除3天前的binlog

find /root/70_binlogs/ -name "mysql-bin*" -mtime +3 -exec rm -rf {} \;

# 找到最新的binlog名字

binlogfile=`ls -lthr /root/70_binlogs|tail -n1|awk '{print $NF}'`

# 判断mysqlbinlog进程是否存在,如果不存在就重启mysqlbinlogps -ef|grep -w mysqlbinlog|grep -v grep

if [[ $? = 0 ]];then

echo "mysqlbinglog process is ok."

else

echo "mysqlbinglog process is not work."cd/root/70_binlogsif [[ $? = 0 ]];then

/usr/local/mysql/bin/mysqlbinlog --read-from-remote-server --raw --host=IP --port=3307 --user=user --password=password --stop-never $binlogfile &

else

echo "mysqlbinglog command excute fail."exitfi

fi

加入crontab,每分钟执行一次

[root@test1~]# crontab -l

# mysqlbinlog server monitor*/1 * * * * sh /root/mysqlbinlog_check.sh >> /tmp/mysqlbinlog_server.log

欢迎转载,请注明出处

参考

如何远程备份MySQL binlog - iVictor - 博客园 https://www.cnblogs.com/ivictor/p/5502240.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值