2021-05-12 14:32:11
Linux下使用crontab自動備份資料庫
這裡在Linux下使用到crontab定時任務的新增及mysqldump執行簡單的資料庫備份,具體步驟如下:
1. 編寫一個指令碼: /serverBack/autobackmysql.sh
內容如下:
方法一:
##使用mysqldump備份資料庫erms
/usr/local/MySQL/bin/mysqldump -uroot -ppwd erms >> /serverBack/mysql_back/erms_$(date+"%Y_%m_%d").sql
##找到/serverBack/mysql_back/下檔名稱以erms_開頭,以 .sql 結尾的檔案,並且是7天前系統修改過的檔案,將其刪除
find /serverBack/mysql_back/ -mtime +7-name "erms_*.sql" -exec rm -rf {} ;
方法二:
/usr/local/mysql/bin/mysqldump -uroot -ppwd dbname > dir/db_`date +%F`.sql
##保留近一週的備份檔案,更早的刪除
find /dir -mtime +7 -name"db_*.sql" -exec rm -rf {} ;
方法三:
filename='date +%y%m%d'
/usr/local/mysql/bin/mysqldump -uroot-proot erms >>/serverBack/mysql/$filename.sql
較全的shell指令碼內容如下:
echo "---------------------------------------------------" >> /serverBack/dbBack/dbBackLog.log
echo $(date +"%Y-%m-%d %H:%M:%S") "erms Database backup start" >> /serverBack/dbBack/dbBackLog.log
/usr/local/mysql/bin/mysqldump -uroot -ppwd erms >> /serverBack/dbBack/erms_$(date +"%Y-%m-%d").sql
if [ 0 -eq $? ];then
if [ -f "/serverBack/dbBack/erms_$(date +"%Y-%m-%d").sql" ];then
echo $(date +"%Y-%m-%d %H:%M:%S") "erms Database backup success!" >> /serverBack/dbBack/dbBackLog.log
else
echo $(date +"%Y-%m-%d %H:%M:%S") "erms Database backup fail!" >> /serverBack/dbBack/dbBackLog.log
fi
else
echo $(date +"%Y-%m-%d %H:%M:%S") "erms Database backup error!" >> /serverBack/dbBack/dbBackLog.log
fi
echo "---------------------------------------------------" >> /serverBack/dbBack/dbBackLog.log
find /serverBack/mysql_back/ -mtime +7 -name "erms_*.sql" -exec rm -rf {} ;
注意:a.這裡的mysqldump最好是使用絕對路徑,若直接使用mysqldump有可能備份成空檔案
b.為了確保該指令碼內容準確無誤,可以單獨執行每個命令,如執行mysqldump命令:/usr/local/mysql/bin/mysqldump -uroot -ppwd erms >> /serverBack/mysql_back/erms_$(date+"%Y_%m_%d").sql
c.find命令中,結尾處的 ; 分號不能省略
2. 新增一個定時任務
crontab –e ##編輯定時任務
新增定時任務內容:
00 15 * * * /serverBack/autobackmysql.sh ##每天定時15:00:00 執行指令碼 /serverBack/autobackmysql.sh
命令:
crontab –e ##編輯定時任務
crontab –r 刪除所有定時任務
crontab –l 列出所有定時任務
本文永久更新連結地址:http://www.linuxidc.com/Linux/2017-05/143604.htm
相關文章