溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

通過innobackup結合計劃任務實現(xiàn)備份mysql

發(fā)布時間:2020-05-25 11:38:12 來源:網絡 閱讀:172 作者:三月 欄目:MySQL數據庫

下文主要給大家?guī)硗ㄟ^innobackup結合計劃任務實現(xiàn)備份mysql,希望這些內容能夠帶給大家實際用處,這也是我編輯通過innobackup結合計劃任務實現(xiàn)備份mysql的主要目的。好了,廢話不多說,大家直接看下文吧。

寫個腳本讓其自動完全和增量備份
完全備份

vim /root/allbak.sh
#!/bin/bash
[ ! -e /backup ]&& mkdir /backup   //新建個文件夾專門放備份文件的
day=`date +%F`                     //定義日期是時間
user=root
pass=123456
innobackupex --user $user --password $pass /backup/allbak${day} --no-timestamp   //用innobackupex做完全備份
mysql -u$user -p$pass -e "flush logs" 
```   //啟用binlog日志,每次完全備份之后,刷新一遍binlog日志

vim /root/newbak.sh      
#!/bin/bash
d1=date +%F          //定義時間,用日期來區(qū)分
d2=date +%F -d "-1 days"   //找到昨天的日期,好指明上一次備份的備份文件
dir1=/backup/allbak${d2}     //昨天做的完全備份文件
dir2=/backup/newbak${d2}     //昨天做的增量備份文件
user=root
pass=123456
[ ! -e /backup ]&& mkdir /backup      //如果文件不存在,則創(chuàng)建文件夾
if [ -e ${dir1} ];then               //判斷昨天做的是完全備份
innobackupex --user $user --password $pass --incremental /backup/newbak${d1} --incremental-basedir=${dir1} --no-timestamp       //指定昨天備份的完全備份文件
elif [ -e ${dir2} ];then             //判斷昨天做的是增量備份
innobackupex --user $user --password $pass --incremental /backup/newbak${d1} --incremental-basedir=${dir2} --no-timestamp    //指定昨天備份的增量備份文件
else
innobackupex --user $user --password $pass /backup/allbak${d1} --no-timestamp
//昨天既沒有做增量備份,又沒有做完全備份,則做一次完全備份。
fi

加權限:
chmod +x /root/allbak.sh 
chmod +x /root/newbak.sh

寫計劃任務:
crontab -e 
00  03 * * 1 /root/allbak.sh  &>/dev/null      //每周一的凌晨3點執(zhí)行完全備份
00   04  * * 2-7 /root/newbak.sh    & >/dev/null  //每周二到周7的凌晨4點執(zhí)行增量備份

重啟crond服務
systemctl restart crond

systemctl enable crond

對于以上關于通過innobackup結合計劃任務實現(xiàn)備份mysql,大家是不是覺得非常有幫助。如果需要了解更多內容,請繼續(xù)關注我們的行業(yè)資訊,相信你會喜歡上這些內容的。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI