mysql資料庫結合crontab實現定時備份
阿新 • • 發佈:2022-12-02
說明:centos7伺服器上,使用docker拉取mysql映象,然後再生成的mysql容器
備份指令碼
生成備份的sql後,壓縮成tar包,並刪除7天前的備份檔案
mysql_dump.sh
#!/bin/bash docker exec -it mysql56 mysqldump -uroot -proot stu2 | gzip > /home/zcb/backup/stu2_`date +%Y%m%d`.sql.gz send=`date '+%Y-%m-%d %H:%M:%S'` if [ $? -ne 0 ]; then echo "$send 資料備份失敗!" exit -1 else echo "$send 資料備份成功!" fi find /home/zcb/backup/ -mtime +7 -name 'stu2_[1-9].sql' -exec rm -rf {} \;
crontab定時執行
建立定時任務
[root@zcb /]# crontab -e
然後在vim視窗,編輯如下表達式:
10 12 * * * bash /home/zcb/backup/mysql_dump.sh > /home/zcb/backup/mysql_dump.log 2>&1
編輯完成後,按下:wq,進行儲存
檢視定時任務
[root@zcb /]# crontab -l
這個命令會顯示當前使用者所有的定時任務,和crontab -e 命令所看到的效果相同
定時執行
若執行完成後,系統會給使用者傳送郵件,地址位於:/var/spool/mail/zcb