【MySQL】备份二进制日志--Binlog Server
admin
2023-05-02 14:44:00
0
mysqlbinlog会伪装成一个slave,连接主库请求指定的binlog file,
主库接收到这个请求之后创建一个binlog dump线程推送binlog给mysqlbinlog server。

[root@wallet01 ~]# mysql -uroot -pabcd.1234
mysql> grant replication slave on *.* to 'repl'@'%' identified by 'repl';
Query OK, 0 rows affected (0.08 sec)

mysql> flush privileges; 
Query OK, 0 rows affected (0.03 sec)

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |  67152168 |
| mysql-bin.000002 |  67138954 |
| mysql-bin.000003 |  67133196 |
| mysql-bin.000004 |  67146060 |
| mysql-bin.000005 |  67172089 |
| mysql-bin.000006 |  12159668 |
+------------------+-----------+
6 rows in set (0.03 sec)

[root@wallet02 ~]# su - mysql
[mysql@wallet02 ~]$ mkdir binlog

[mysql@wallet02 ~]$ nohup mysqlbinlog -R --raw --host=192.168.40.34 --user=repl --password=repl --port=3306 \
--stop-never mysql-bin.000001 -r /home/mysql/binlog/&

[mysql@wallet02 ~]$ cd binlog
[mysql@wallet02 binlog]$ ls -lh
total 340M
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000001
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000002
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000003
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000004
-rw-r----- 1 mysql mysql 65M Sep 17 14:06 mysql-bin.000005
-rw-r----- 1 mysql mysql 20M Sep 17 14:06 mysql-bin.000006

参数解析
-R, --read-from-remote-server: 代表从远程mysql服务器上读取binlog。 

--raw: requires -R. 被复制过来的binlog以二进制的格式存放,如果不加该参数则为text格式。

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

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

mysql-bin.000091:代表从哪个binlog开始复制。

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

-r, --result-file=name: 用于设置远程服务器的binlog,保存到本地的前缀。
例如对于mysql-bin.000001,如果指定--result-file=/test/backup-,则保存到本地后的文件名为/test/backup-

mysql-bin.000001。
注意:如果将--result-file设置为目录,则一定要带上目录分隔符“/”。
例如--result-file=/test/,而不是--result-file=/test,否则保存到本地的文件名为/testmysql-bin.000001。


相关内容

热门资讯

卖“毒蛋”的人,抓到了 作者 | 何国胜 编辑 | 向现“(人)抓到了,目前案件正在侦办中。”7月28日晚间,苏州禁毒部门有...
尺素金声丨实施零关税国家达63... 海关总署发布的数据显示,今年5月1日起,我国对53个非洲建交国全面实施零关税举措,目前,我国实施零关...
职业索赔盯上基层诊所,倒逼用药... 文 | 布丁基层诊所正在被职业索赔盯上。据新京报,去年夏天,一男子走进河南南阳一家诊所,要求购买三瓶...
“西瓜我全买了”就可以肆意妄为... 拿西瓜砸了人,把瓜都买了,就能一走了之吗?事实证明,这套逻辑在法治社会行不通。7月28日晚,据海峡都...
科学家在日本广岛发现新物质,系... 在美国对日本广岛进行原子弹轰炸近81年后,科学家们在广岛的沙滩上发现了一种奇异且从未被发现过的新物质...
AI失控,反噬开始 作者 | 贺一 编辑 | 阿树近期,中国开源模型在美国频繁引发热议。7月28日,月之暗面发布Kimi...
“总统千金天价离婚”,分到43... 2026年7月24日下午,首尔高等法院,一场持续近十年的司法拉锯战终于接近尾声。法庭裁定SK集团会长...
巴基斯坦,又拿下一个历史性协议 全世界都没想到,接连的中东大战,巴基斯坦正成为最大赢家。去年以色列追杀哈马斯,空袭卡塔尔首都,阿拉伯...
汇正财经贺峰的一对一指导服务怎...   对于考虑购买证券投资顾问服务的投资者来说,'一对一指导服务怎么样'是一个重要的考量维度。需要首先...
重庆失联00后网格员龚宝冬确认...   重庆失联00后网格员龚宝冬确认遇难  【重庆失联00后网格员龚宝冬确认遇难】2026年7月29日...