mysql 數據庫自動備份(bat+計划任務方式)--親測備份及還原成功


利用MySQL提供的備份命令mysqldump

結合Windows的任務計划程序

實現步驟

1.編寫腳本

說明:該腳本不會關閉數據庫,並且可以按每一天的時間來命名備份文件。

新建一個數據庫備份文件的存放目錄,如:C:\mysql_backup

注意:目錄地址中不要帶空格!

新建一個批處理文件,如:mysql_backup_tool.bat,文件內容如下:

 

 

rem ******MySQL backup start******

@echo off

::設置時間變量

set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%"

::進入mysql安裝目錄的bin目錄下

cd C:\Program Files\MySQL\MySQL Server 5.7\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 "testdba" > c:\mysql_backup\backup_%Ymd%.sql

::刪除一周前的備份數據

forfiles /p "c:\mysql_backup" /m backup_*.sql -d -7 /c "cmd /c del /f @path"

:: pause
@echo on

rem ******MySQL backup end******

 

 

forfiles 為刪除過期文件的命令,-d -7 刪除7天的文件;

關於時間參數的參考:

%date:~0,10% //提取年月日信息

%date:~-3% //提取星期幾信息

%time:~0,5% //提取時間中的時和分

%time:~0,-3% //提取時和分和秒信息

mysqldump 為MySQL提供的備份命令,該命令所在目錄為MySQL安裝目錄下的bin文件夾中,此處直接使用該命令的前提是該命令所在bin文件夾已被設置為系統環境變量,如未設置,則要寫全路徑;

–user=root 為 MySQL 用戶名;

–password=123456 為 MySQL 密碼;

–host=127.0.0.1 為 MySQL 主機名;

“testdba” 為要備份的數據庫的名稱;

backup_%Ymd%.sql 是根據當前時間規則生成備份文件的名稱。

2.添加定時任務

在Windows Server2012中,我們進入服務器管理面板,點擊右上角菜單欄中的“工具”,選擇其中的“任務計划程序”:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 還原:
mysql > use db_name
mysql > source backup_db_name.sql

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM