新聞中心
這篇文章主要介紹CentOS/RHEL系統(tǒng)如何實(shí)現(xiàn)每天自動(dòng)備份MySQL數(shù)據(jù)庫(kù),文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
1.先在服務(wù)器下建文件夾以下3個(gè)文件夾:/bak、/bak/bakmysql、/bak/bakmysqlold。
[root@server21 ~]# mkdir -p /bak/bakmysql{,old}
在/bak/bakmysql文件夾下建一個(gè)shell腳本:
[root@server21 ~]# touch /bak/bakmysql/backup.sh
給文件授權(quán):
[root@server21 ~]# chmod 755 /bak/bakmysql/backup.sh
2.編輯shell腳本:
[root@server21 ~]# vim /bak/bakmysql/backup.sh
#!/bin/bash
cd /bak/bakmysql
echo "You are in bakmysql directory "
mv bakmysql* /bak/bakmysqlold
echo "Old databases are moved to bakmysqlold folder "
Now=$(date +"%Y-%m-%d")
File=bakmysql-$Now.sql
mysqldump -uroot -p'password' db_bbs > $File
echo "Your database backup successfully completed "
SevenDays=$(date -d -7day +"%Y-%m-%d")
if [ -f /bak/bakmysqlold/bakmysql-$SevenDays.sql ]; then
rm -rf /bak/bakmysqlold/bakmysql-$SevenDays.sql
echo "You have delete 7days ago backup file "
else
echo "7 days ago backup file not exist "
fi
3.Shell腳本mysqldump -uroot -p'password' db_bbs > $File語(yǔ)句中的紅色字體請(qǐng)分別換為自己的mysql數(shù)據(jù)庫(kù)用戶(hù)、密碼和database名。腳本先將/bak/bakmysql文件夾下bakmysql為文件名開(kāi)頭的備份文件移至/bak/bakmysqlold,再生成最新的備份文件,最后再判斷/bak/bakmysqlold文件夾中七天前的文件是否存在,存在則刪除,最后結(jié)束。這樣就能自動(dòng)備份最近七天的數(shù)據(jù)庫(kù)腳本。
4.設(shè)置每天自動(dòng)執(zhí)行shell腳本:
[root@server21 ~]# vim /etc/crontab 在最后加入這樣一行(具體含義請(qǐng)自行參考/etc/crontab中的注釋?zhuān)?br/>0 0 * * * root /bak/bakmysql/backup.sh
重啟crontab:
[root@server21 ~]# /sbin/service crond restart
如果沒(méi)有設(shè)置crontab為開(kāi)機(jī)自啟動(dòng)可以如下設(shè)置其開(kāi)機(jī)自啟動(dòng):
[root@server21 ~]# chkconfig –level 35 crond on
以上是“CentOS/RHEL系統(tǒng)如何實(shí)現(xiàn)每天自動(dòng)備份MySQL數(shù)據(jù)庫(kù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!
分享題目:CentOS/RHEL系統(tǒng)如何實(shí)現(xiàn)每天自動(dòng)備份MySQL數(shù)據(jù)庫(kù)-創(chuàng)新互聯(lián)
本文來(lái)源:http://www.dlmjj.cn/article/giioo.html