利用系統crontab來(lái)定時(shí)執行備份文件,按日期對備份結果進(jìn)行保存,達到備份的目的。
1、創(chuàng )建保存備份文件的路徑/mysqldata
#mkdir /mysqldata
2、創(chuàng )建/usr/sbin/bakmysql文件
#vi /usr/sbin/bakmysql
輸入
rq=` date +%Y%m%d `
tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql
或者寫(xiě)成
rq=` date +%Y%m%d `
mysqldump --all-databases -u root -p980405 > /mysqldata/mysql$rq.tar.gz
/var/lib/mysql是你數據庫文件的目錄,部分用戶(hù)是/usr/local/mysql/data,每個(gè)人可能不同
/mysqldata/表示保存備份文件的目錄,這個(gè)每個(gè)人也可以根據自己的要求來(lái)做。
3、修改文件屬性,使其可執行
# chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab
#vi /etc/crontab
在下面添加
01 3 * * * root /usr/sbin/bakmysql
表示每天3點(diǎn)鐘執行備份
5、重新啟動(dòng)crond
# /etc/rc.d/init.d/crond restart
完成。
這樣每天你在/mysqldata可以看到這樣的文件
mysql20040619.tar.gz
你直接下載就可以了。
在tar命令執行前,停止數據庫服務(wù)進(jìn)程或鎖定數據庫,
否則恢復數據時(shí),會(huì )出現數據庫損壞的情形,運氣好時(shí)可修復,運氣不好時(shí)就不可以了。