linux 定時任務備份mysql數據庫腳本

1.在mnt文件夾中新建文件夾存放備份sql。

2.在mnt文件夾下新建文件夾存放腳本 。 

backup_database.sh腳本內容如下 :

#!/bin/bash
baseDir="/mnt/data_dump/";
cd "$baseDir";
echo "開始備份數據庫";
echo `mysqldump  -hlocalhost -u用戶明 -p密碼 --default-character-set=utf8  數據庫名 > database_dump_$(date +%Y%m%d_%H%M%S).sql`;
echo "備份數據完成";
oldDate=`date --date='8 day ago' +%Y%m%d`;
#刪除當前日期-8的備份
echo `rm -rf database_dump_$oldDate*`;
echo "刪除$oldDate的備份成功"

先執行 ./backup_database.sh腳本,驗證腳本是否可行

如果執行腳本遇到如下錯誤:

 

加入如下一段內容 : --socket=/var/lib/mysql/mysql.sock

#!/bin/bash
baseDir="/mnt/data_dump/";
cd "$baseDir";
echo "開始備份數據庫";
echo `mysqldump  -hlocalhost -u用戶明 -p密碼 --socket=/var/lib/mysql/mysql.sock --default-character-set=utf8  數據庫名 > database_dump_$(date +%Y%m%d_%H%M%S).sql`;
echo "備份數據完成";
oldDate=`date --date='8 day ago' +%Y%m%d`;
#刪除當前日期-8的備份
echo `rm -rf database_dump_$oldDate*`;
echo "刪除$oldDate的備份成功"

通過chmod 777 backup_database.sh來賦權限,授權執行權限。

在添加執行的定時任務:

vim /etc/crontab
#添加一條記錄
0 0 0 * * ? root /mnt/dump/backup_database.sh


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章