一、創(chuàng)建backup.sh腳本文件
#!/bin/sh
SOURCE_FOLDER=/data
DB_FOLDER=/data/db
BACKUP_FOLDER=/data/backup
TM=`date +%Y%m%d%H%M%S`
echo start to dump mysql database and backup files at $TM
# delete old sql backup files
cd $DB_FOLDER
rm -rf $DB_FOLDER/*.sql
#dump mysql data
/usr/bin/mysqldump -h127.0.0.1 -uroot -pcz_pims@2018 --single-transaction --master-data=2 --databases ms > ms-$TM.sql
echo dump db pims_hf as pims_hf-$TM.sql
/usr/bin/mysqldump -h127.0.0.1 -uroot -ppass --single-transaction --master-data=2 --databases ms_workflow > pims_hf_workflow-$TM.sql
echo dump db ms_workflow as pims_hf_workflow-$TM.sql
/usr/bin/mysqldump -h127.0.0.1 -uroot -ppass --single-transaction --master-data=2 --databases files > files-$TM.sql
echo dump db filesrv as files-$TM.sql
# delete backup files which 30 days before than today
find $BACKUP_FOLDER/* -type f -mtime +30 -name "*.zip" -exec rm {} \;
# compress
cd $SOURCE_FOLDER
zip -q -r $BACKUP_FOLDER/db-$TM.zip db
zip -q -r $BACKUP_FOLDER/files-new.zip files
echo zip $SOURCE_FOLDER files and backup to $BACKUP_FOLDER end
# 調(diào)用系統(tǒng)方式 send notice msg to 釘釘通知
curl -X POST -d "templateCode=003&content=文件備份成功,備份文件保存到此目錄: $BACKUP_FOLDER" http://127.0.0.1:8080/admin/do/notify/dingding
echo -e end backup files at $TM '\n\n\n'
二、創(chuàng)建定時任務
1)、在命令行輸入: crontab -e 然后添加相應的任務,wq存盤退出。
2)、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應的任務。
crontab文件格式:
* * * * * command
minute hour day month week command
分 時 天 月 星期 命令
例如:每周每月每天1點0分執(zhí)行備份腳本,日志放在backup.log文件中
0 1 * * * /bin/sh /home/script/backup.sh >> /home/script/backup.log 2>&1
若測試腳本是否正常運行,可以手動執(zhí)行測試
3)、查詢當前用戶定時任務。
總結(jié)
以上所述是小編給大家介紹的linux 服務器自動備份腳本的方法(mysql、附件備份),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!