怎么实现MySQL mysqlbinlog远程备份binary log

74次阅读
没有评论

共计 2284 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章主要介绍“怎么实现 MySQL mysqlbinlog 远程备份 binary log”,在日常操作中,相信很多人在怎么实现 MySQL mysqlbinlog 远程备份 binary log 问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么实现 MySQL mysqlbinlog 远程备份 binary log”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!

  对于 MySQL 数据库二进制日志的实时备份,无疑是一个明智的策略,从 MySQL5.6 开始,mysqlbinlog 支持将远程服务器上的 binlog 实时复制到本地服务器上。

  两台测试数据库:192.168.8.50 和 192.168.8.63,现将 192.168.8.63 上的 binary log 备份至 192.168.8.50 机器。

1、登录 192.168.8.63 数据库查看 binlog

mysql  show binary logs;
+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000001 | 143 |
| mysql-bin.000002 | 143 |
| mysql-bin.000003 | 143 |
| mysql-bin.000004 | 143 |
| mysql-bin.000005 | 916 |
| mysql-bin.000006 | 120 |
+------------------+-----------+

2、在 192.168.8.50 进行远程备份

mysqlbinlog –raw –read-from-remote-server –stop-never –host=192.168.8.63 –port=3306 –user=root –password=mysql mysql-bin.000001 –result-file=/backup/binlog_bakcup/

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

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

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

–host:远程备份的数据库的 IP 地址

–port:远程备份的数据库的端口号

–user:需要 REPLICATION SLAVE 权限

–result-file:备份目录

mysql-bin.000001:从这个日志开始备份:

查看备份情况:

[mysql@mysql5 binlog_bakcup]$ cd /backup/binlog_bakcup
[mysql@mysql5 binlog_bakcup]$ ll
total 24
-rw-r----- 1 mysql mysql 143 Aug 3 10:26 mysql-bin.000001
-rw-r----- 1 mysql mysql 143 Aug 3 10:26 mysql-bin.000002
-rw-r----- 1 mysql mysql 143 Aug 3 10:26 mysql-bin.000003
-rw-r----- 1 mysql mysql 143 Aug 3 10:26 mysql-bin.000004
-rw-r----- 1 mysql mysql 916 Aug 3 10:26 mysql-bin.000005
-rw-r----- 1 mysql mysql 120 Aug 3 10:26 mysql-bin.000006

3、形成备份脚本

#!/bin/sh
MBL=/usr/local/mysql/bin/mysqlbinlog
MYSQLHOST=192.168.8.63
MYSQLPORT=3306
MYSQLUSER=root
MYSQLPASS=mysql
BACKUPDIR=/backup/binlog_bakcup
DATADIR=/mysql/data
cd $BACKUPDIR
echo  Starting live binlog backup 
$MBL --raw --read-from-remote-server --stop-never --host=$MYSQLHOST --port=$MYSQLPORT --user=$MYSQLUSER --password=$MYSQLPASS mysql-bin.000001 --result-file=/backup/binlog_bakcup/ mysql-bin.000001

4、后台执行备份脚本

nohup /home/mysql/bin/binlog_backup.sh   /home/mysql/log/binlog_backup.log 2 1

到此,关于“怎么实现 MySQL mysqlbinlog 远程备份 binary log”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-24发表,共计2284字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)