mysql binlog server 搭建

    mysqlbinlog 做實時增量備份是很有必要的,公司開發層誤刪過整個data目錄,如果沒有對binlog做實時備份。也沒有從庫的環境下,恢復也是很麻煩的。有了binlog再結合全備做基於時間點的恢復還是很方便的。

用法:

mkdir -p /backup_binlog mysqlbinlog -h56.56.56.207 -P3306 -ubackup -p123456 -R --raw --stop-never  mysql-bin.000003 -r /backup_binlog/ &


[root@mysql_duizhang ~]# mysql  -uroot -p123456 -e "show binary logs"
mysql: [Warning] Using a password on the command line interface can be insecure.
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |       177 |
| mysql-bin.000002 |     93166 |
| mysql-bin.000003 |   1266693 |
| mysql-bin.000004 |   1190364 |
+------------------+-----------+



可以看到,把從3開始的binlog都拉取過來了。


[root@localhost backup_binlog]# ll
total 2404
-rw-r-----. 1 root root 1266693 Dec 29 22:20 mysql-bin.000003
-rw-r-----. 1 root root 1190364 Jan  8 22:42 mysql-bin.000004


源端提交了事務之後,會持續拉取最新的binlog到本地。

參數介紹:

         -R  : --read-from-remote-server 表示開啓binlog備份,在對應的主節點上請求binlog到本地。
       --raw : 被複制過來的binlog以二進制的格式存放,如果不加該參數則爲text格式。
         -r  : --result-file 指定目錄或文件名
          -t : 這個選項代表從指定的binlog開始拉取,直到當前主節點上binlog的最後一個。
--stop-never : 持續連續從主節點拉取binlog,持續備份到當前最後一個.會一直拉取,直到mysql服務停止
--stop-never-slave-server-id : 默認值65535,用於在多個mysqlbinlog進程或者從服務器的情況下,避免id衝突。


mysqlbinlog開始備份後,直到mysql服務關閉或者被強制kill纔會結束。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章