在 Windows Server 2003 環境下,需要定時自動備份 MySQL 資料庫,並清理舊備份檔案。雖然有現成備份軟體(如護衛神好備份),但掌握腳本寫法更靈活。
.bat 批處理腳本,調用 mysqldump.exe 進行備份。@echo on
REM ------------------------ 備份 bugdb (InnoDB) -----------------------------
del C:/backup/website/bugdb_*.sql
cd F:/usr/wamp/mysql/bin
set year=%date:~0,4%
set month=%date:~5,2%
set day=%date:~8,2%
set filename=bugdb_%year%%month%%day%.sql
mysqldump.exe bugdb -uroot -p123456 > F:/backup/website/%filename%
@echo off
說明: 第 9 行也可簡寫為 set filename=bugdb%date:~0,10%.sql。
bugdb_ 開頭的 .sql 檔案。bin 目錄,以便直接呼叫 mysqldump.exe。bugdb_20240312.sql。> 為輸出重導向,將結果寫入檔案。mysqldump.exe "資料庫名" -u使用者 -p密碼 > "備份檔完整路徑"
backup.bat(例:D:/scripts/backup_bugdb.bat)。backup.bat。D:/html/wamp/mysql/bin/mysql.exe -uroot -p123456 --default-character-set=utf8 bugdb < F:/bugdb_20100312.sql
此方案零成本、易維護,適合中小型 Windows 環境。若需更豐富功能(壓縮、異地傳輸、郵件通知),可進一步擴充腳本或改用 PowerShell/Python。