本篇文章給大家分享的是有關(guān)binlog 備份是怎么樣的,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創(chuàng)新互聯(lián)建站專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、叢臺網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、商城網(wǎng)站制作、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為叢臺等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
binlog server
說明:有時候備份會選擇全備+binlog 那么你們的binlog都是怎么備份的?
MySQL 5.6以后,可以利用mysqlbinlog 把遠程機器的日志備份到本地目錄 從而達到增量或是日志安全的增量備份。
環(huán)境:
mysql-5.7.16
centos 6.7
172.16.11.187:binlog server(收集binlog的數(shù)據(jù)庫服務(wù)器)
172.16.11.188 : 需要備份binlog的數(shù)據(jù)庫所在機器
利用mysqlbinlog將遠程binlog文件傳到binlogserver上
187:mysqlbinlog -R --raw --host=172.16.11.188 --user='root' --password='123456' -P 3306 --stop-never mysql-bin.000005 (執(zhí)行命令是所在路徑是/root)a
188:mysql> show binary logs;
+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000001 | 177 |
| mysql-bin.000002 | 426 |
| mysql-bin.000003 | 9688778 |
| mysql-bin.000004 | 177 |
| mysql-bin.000005 | 201 |
| mysql-bin.000006 | 154 |
+------------------+-----------+
6 rows in set (0.00 sec)
mysql> flush logs;
Query OK, 0 rows affected (0.01 sec)
mysql> flush logs;
Query OK, 0 rows affected (0.00 sec)
mysql> flush logs;
Query OK, 0 rows affected (0.00 sec)
mysql> flush logs;
Query OK, 0 rows affected (0.00 sec)
mysql> show binary logs;
+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000001 | 177 |
| mysql-bin.000002 | 426 |
| mysql-bin.000003 | 9688778 |
| mysql-bin.000004 | 177 |
| mysql-bin.000005 | 201 |
| mysql-bin.000006 | 201 |
| mysql-bin.000007 | 201 |
| mysql-bin.000008 | 201 |
| mysql-bin.000009 | 201 |
| mysql-bin.000010 | 154 |
+------------------+-----------+
10 rows in set (0.00 sec)
在binlog server上查看在188上flush log 新增的binlog有沒有過來:
[root@ces1 ~]# ls -lrth
total 9.4M
-rw-r----- 1 root root 201 Aug 14 15:25 mysql-bin.000005
-rw-r----- 1 root root 201 Aug 14 15:31 mysql-bin.000006
-rw-r----- 1 root root 201 Aug 14 15:31 mysql-bin.000007
-rw-r----- 1 root root 201 Aug 14 15:31 mysql-bin.000008
-rw-r----- 1 root root 123 Aug 14 15:31 mysql-bin.000010
-rw-r----- 1 root root 201 Aug 14 15:31 mysql-bin.000009
-rw-r----- 1 root root 201 Aug 14 15:33 mysql-bin.000015
-rw-r----- 1 root root 201 Aug 14 15:33 mysql-bin.000016
-rw-r----- 1 root root 123 Aug 14 15:33 mysql-bin.000018
-rw-r----- 1 root root 201 Aug 14 15:33 mysql-bin.000017
發(fā)現(xiàn)binlog 已經(jīng)過來了。
拓展:一般的主從復(fù)制,如果主從連接停止了,會自動嘗試連接,binlogserver如果停止了并不會自動嘗試連接。
利用腳本來解決這個問題:
binlog_remote.sh
#!/bin/sh
BACKUP_BIN=/tmp/mysqlbinlog
LOCAL_BACKUP_DIR=/data/db/binlog_backup
BACKUP_LOG=/data/db/binlog_backup/backuplog
REMOTE_HOST=172.16.11.188
REMOTE_PORT=3306
REMOTE_USER=root
REMOTE_PASS=123456
FIRST_BINLOG=mysql-bin.000001
#time to wait before reconnecting after failure
SLEEP_SECONDS=10
##create local_backup_dir if necessary
mkdir -p ${LOCAL_BACKUP_DIR}
cd ${LOCAL_BACKUP_DIR}
## 運行while循環(huán),連接斷開后等待指定時間,重新連接
while :
do
if [ `ls -A "${LOCAL_BACKUP_DIR}" |wc -l` -eq 0 ];then
LAST_FILE=${FIRST_BINLOG}
else
LAST_FILE=`ls -l ${LOCAL_BACKUP_DIR} | grep -v backuplog |tail -n 1 |awk '{print $9}'`
fi
${BACKUP_BIN} --raw --read-from-remote-server --stop-never --host=${REMOTE_HOST} --port=${REMOTE_PORT} --user=${REMOTE_USER} --password=${REMOTE_PASS} ${LAST_FILE}
echo "`date +"%Y/%m/%d %H:%M:%S"` mysqlbinlog停止,返回代碼:$?" | tee -a ${BACKUP_LOG}
echo "${SLEEP_SECONDS}秒后再次連接并繼續(xù)備份" | tee -a ${BACKUP_LOG}
sleep ${SLEEP_SECONDS}
done
以上就是binlog 備份是怎么樣的,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞標題:binlog備份是怎么樣的
分享地址:http://www.rwnh.cn/article26/ghdicg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、云服務(wù)器、虛擬主機、營銷型網(wǎng)站建設(shè)、、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)