mysql數據庫備份_可執行文件
阿新 • • 發佈:2018-08-26
作業 mysql數據庫 www. lan local 不想 刪庫 分享圖片 users
17 17 * * * /bin/sh /root/data_backups/timing/sqlAutoBak.sh #(每天17時17分備份)
19 17 * * * /bin/sh /root/data_backups/timing/sqlAutoBak.sh #(每天17時19分備份) 上面語句時間分別對應: 19 17 * * * 分 時 日期 月 星期 /root/data_backups/....對應執行文件位置! 註:多個任務就加多條任務語句,多個數據庫就多加執行文件 4.重啟crond
這段時間接手運維的工作,剛開始就嘗到了數據丟失的痛!老板抱怨,同事抱怨!都說先刪庫再跑路,我還不想跑!
下面是我的備份記錄:(分4步)
1.編寫備份執行文件sqlAutoBak.sh
1 #!/bin/sh 2 3 # Database info 4 DB_USER="數據庫用戶" 5 DB_PASS="數據庫密碼" 6 DB_HOST="localhost" 7 DB_NAME="數據庫名" 8 9 # Others vars 10 BIN_DIR="/usr/local/mysql/bin" #the mysql bin path11 BCK_DIR="/root/data_backups/timing" #備份文件位置 12 DATE=$(date "+%Y-%m-%d_%H:%M:%S") 13
14 # 備份命令
15 $BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS -h$DB_HOST $DB_NAME > $BCK_DIR/db_$DATE.sql
2.上傳到服務器中,給文件sqlAutoBak.sh賦權限
# chmod 777 sqlAutoBak.sh
3.編輯定時任務
crontab -e
將下面語句加到任務中
19 17 * * * /bin/sh /root/data_backups/timing/sqlAutoBak.sh #(每天17時19分備份) 上面語句時間分別對應: 19 17 * * * 分 時 日期 月 星期 /root/data_backups/....對應執行文件位置! 註:多個任務就加多條任務語句,多個數據庫就多加執行文件 4.重啟crond
service crond restart //重啟 service crond status //查看狀態
Linux 系統下,如果已經有了Crond的作業,但是發現它並沒有執行的話,可能有下面幾個原因:
1、crond服務沒有啟動;
2、crontab沒有按要求添加;
3、crontab的使用者帳號受到限制;
4、腳本或者命令沒有可執行權限;
5、服務器時間與本地時間的不同步;
mysql數據庫備份_可執行文件