加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

怎么 达成MySQL mysqlbinlog远程备份binary log

发布时间:2023-08-18 12:36:51 所属栏目:MySql教程 来源:
导读:这篇文章主要介绍“怎么实现MySQL mysqlbinlog远程备份binary log”,在日常操作中,相信很多人在怎么实现MySQL mysqlbinlog远程备份binary log问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作

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

 对于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”的学习就结束了,希望能够解决大家的疑惑。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章