自動備份mysql並刪除7天前備份

發佈時間:2017-08-28

1.遠程連接服務器


先參看https://www.west.cn/faq/list.asp?unid=417 教程遠程登陸服務器


2.下載備份腳本文件


windows: 下載http://downinfo.myhostadmin.net/vps/bkupmysql.bat 保存到d盤根目錄

linux:  wget  http://downinfo.myhostadmin.net/vps/bkupmysql.sh 保存到/root目錄


3.編輯腳本文件

windows:

用記事本打開bkupmysql.bat     

set dbuser=root                        #設置數據庫用戶,一般不需要修改

set dbpass=passwd                      #設置數據庫超管密碼,需要修改為實際的密碼

set DaysAgo=7                          #設置保留天數

set mysqlpath=d:\mysqlbak              #設置備份文件保存路徑,一般不需要修改

set mysql=D:\SOFT_PHP_PACKAGE\mysql\bin\mysql.exe   #設置備份文件保存路徑,5.6版本需要修改路徑

set mysqldump=D:\SOFT_PHP_PACKAGE\mysql\bin\mysqldump.exe #設置mysql執行文件路徑,5.6版本需要修改路徑

set logfile=d:\bkinfo.log              #設置備份成功與否日誌文件,一般不需要修改

set logfail=d:\bkfail.log              #設置失敗過程詳細日誌文件,一般不需要修改

注意:若創建的數據庫中包含Database,test,information_schema,performance_schema,mysql字符,

請刪除

findstr -v "^Database$ ^Database$ ^test$ ^information_schema$ ^performance_schema$ ^mysql$"

中對應的名稱

linux:

vi bkupmysql.sh

按i進入編輯模式

dbuser='root'                         #設置數據庫用戶,一般不需要修改

dbpass='passwd'                       #設置數據庫超管密碼,需要修改為實際的密碼

DaysAgo='7'                           #設置保留天數

mysqlpath='/home/backup/mysql'        #設置備份文件保存路徑,一般不需要修改

mysql='/www/wdlinux/mysql/bin/mysql'  #設置mysql執行文件路徑,一般不需要修改

mysqldump='/www/wdlinux/mysql/bin/mysqldump'  #設置mysqldump執行文件路徑,一般不需要修改

exclude_db="^Database$\|^mysql$\|^information_schema$\|^performance_schema$\|^test$" 

#設置禁止備份的數據庫名,一般不需要修改

logfile='/root/bkinfo.log'            #設置備份成功與否日誌文件,一般不需要修改

#logfail='/root/bkfail.log'           #設置失敗過程詳細日誌文件,一般不需要修改

主要修改數據庫密碼,其他可保持默認

修改完成後按ESC鍵返回,按:wq保存退出

4.添加任務計劃

每天凌晨4點執行

windows:

cmd下執行

schtasks /create /tn "bkupmysql" /ru system /tr d:\bkupmysql.bat /sc daily /st 04:00

linux:

crontab -e

按i進入編輯狀態,在末尾換行,複製以下內容,其中/root/bkfail.log為失敗詳細日誌保存路徑

0 4 * * * /bin/sh /root/bkupmysql.sh >>/root/bkfail.log 2>&1

按ESC鍵返回,按:wq保存退出



提示:以上腳本僅供參考,實際應用可能因環境、權限、配置等不同造成不能備份或其他異常,我司不對此負責,請根據實際情況自行調整。