- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網協(xié)會理事單位
- 安全聯(lián)盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數(shù)碼
#!/bin/bash
databases=(要備份的數(shù)據(jù)庫名)
basepath='/root/backup/'
if [ ! -d "$basepath" ]; then
mkdir -p "$basepath"
fi
for db in ${databases[*]}
do
/bin/nice -n 19 /usr/bin/mysqldump -u數(shù)據(jù)庫賬號 -p數(shù)據(jù)庫密碼 --database $db > $basepath$db-$(date +%Y%m%d).sql
/bin/nice -n 19 tar zPcf $basepath$db-$(date +%Y%m%d).sql.tar.gz $basepath$db-$(date +%Y%m%d).sql
find $basepath -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} ;
done
#rm -rf $basepath/*.sql
腳本如上,我這里的腳本為/root/db.sh
備份的地址
basepath='/root/backup/'
可以自己修改
/bin/nice -n 19是設置優(yōu)先級
備份數(shù)據(jù)庫的命令是mysqldump,命令在/usr/bin/目錄下面
這句代碼是刪除7天前的備份文件
find $basepath -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} ;
這句代碼是刪除生成的sql中間文件,但是我這里把它注釋掉了,也就是說?會刪除,如果要刪除自己把注釋去掉
#rm -rf $basepath/*.sql
注意代碼最好是在CentOS系統(tǒng)中手動敲,別在windows系統(tǒng)中敲了再傳到CentOS系統(tǒng)中,因為有可能因為編碼原因造成腳本運行有問題。
腳本寫好后要通過crontab -e命令設置腳本定時運行
crontab -e
0 3 * * * /root/db.sh
然后保存
這樣就是每天凌晨3:00自動運行腳本,即自動備份數(shù)據(jù)庫
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP