一、編寫備份腳本
rem auther:www.yumi-info.com rem date:20171222 rem ******MySQL backup start******** @echo off forfiles /p "E:\mysql\MySQL BackUp" /m backup_*.sql -d -30 /c "cmd /c del /f @path" set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%" "E:\mysql\MySQL Server 5.6\bin\mysqldump" --opt --single-transaction=TRUE --user=root --password=123456 --host=127.0.0.1 --protocol=tcp --port=3306 --default-character-set=utf8 --single-transaction=TRUE --routines --events "yumi_website" > "E:\mysql\MySQL BackUp\backup_%Ymd%.sql" @echo on rem ******MySQL backup end********
這是一段很常見的windows批處理腳本文件,我來簡單解釋一下其中的關鍵部分:
forfiles /p "E:\mysql\MySQL BackUp" /m backup_*.sql -d -30 /c "cmd /c del /f @path"
forfiles 用來對備份目錄下的過期備份進行刪除?!癊:\mysql\MySQL BackUp”是備份文件所在的路徑,可以自行修改?!癰ackup_*.sql”指的是該路徑下所有以“backup_”開頭,以“.sql”作為后綴的數(shù)據(jù)庫備份文件。而后面的數(shù)字“30”表示30天過期。
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"
使用set命令來定義一個名為“Ymd”的變量,這個變量的值就是后面的一大串規(guī)則,簡單說就是當前的日期和時間
"E:\mysql\MySQL Server 5.6\bin\mysqldump"
這一行命令就是調(diào)用MySQL自帶的備份工具了,注意這個路徑必須寫成你自己的“mysqldump.exe”所在的路徑,一般都是在MySQL安裝路徑的/bin目錄下。而這一行命令后面緊跟著一大串的參數(shù),我們挑幾個重要的來解釋:
--user=root
連接MySQL數(shù)據(jù)庫服務的賬戶,通常該賬戶必須具備數(shù)據(jù)庫備份操作的權限。為了簡便我們使用了root,但是在實際生產(chǎn)環(huán)境中并不建議使用root賬戶,避免賬戶和密碼泄露,從而造成不必要的麻煩。
--password=123456
這是連接MySQL數(shù)據(jù)庫服務的密碼
--host=127.0.0.1
這是數(shù)據(jù)庫服務所在的服務器ip地址
--port=3306
這是數(shù)據(jù)庫服務所在的服務器的端口號
--events "yumi_website" > "E:\mysql\MySQL BackUp\backup_%Ymd%.sql"
events參數(shù)即實現(xiàn)了將數(shù)據(jù)庫備份到一個指定的文件這一操作。"yumi_website"是需要做備份的數(shù)據(jù)庫,而大于號“>”右邊的就是我們的備份文件所保存的服務器目錄和文件名了。
二、設定Windows任務
完成了上述步驟后,我們需要添加Windows計劃任務。
在Windows Server2012中,我們進入服務器管理面板,點擊右上角菜單欄中的“工具”,選擇其中的“任務計劃程序”:
打開了任務計劃程序之后,我們點擊右側的“創(chuàng)建基本任務”:
然后,我們需要填寫任務的名稱,以及描述信息:
點擊下一步之后,我們需要設定任務的執(zhí)行頻率,我選擇的是“每天”:
再次點擊“下一步”,設置任務執(zhí)行的時間,我選擇了夜深人靜的1點:
在“下一步”中,我們選擇“啟動程序”:
在之后的對話框中,我們需要選擇剛才所編寫的批處理文件:
完成這些步驟后,windows會給我們看一下整個任務的概述信息:
確定無誤之后,點擊“完成”就可以了。此時我們就會看到在Windows的任務列表里,多了一條新的任務:
至此,在Windows環(huán)境下自動備份MySQL的設置就全部完成了。
以上這篇在Windows環(huán)境下使用MySQL:實現(xiàn)自動定時備份就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。