首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 資料庫 Windows 系統自動備份方案:WinRAR 定時壓縮與 mysqldump 兩種模式

     編輯:MySQL 資料庫相關知識

Windows 環境下 MySQL 自動備份兩大主流方案:直接備份 data 目錄 (冷備份) 與 mysqldump 邏輯備份 (熱備份),配合 Windows 排程任務實現無人值守。

方案一:WinRAR 壓縮 data 目錄 (冷備份,需停庫)

net stop mysql
del d:\mysql_backup\data /q
"c:\Program Files\WinRAR\WinRAR.exe" a -ag -k -r -s d:\mysql_backup\mysql.rar d:\mysql\data
net start mysql
  • -ag:檔名附加日期時間
  • -k:建立鎖定存檔防修改
  • -r:遞迴子目錄
  • -s:建立固態存檔 (無資訊區塊)

另存為 backup_db.cmd,排程任務設定每日凌晨 3 點執行。優點:完整性高、恢復簡單 (直接覆蓋 data 目錄);缺點:備份期間服務中斷 (30MB 庫約 5 秒)、佔空間大。

方案二:xcopy 增量備份單一資料庫 (冷備份)

net stop mysql
xcopy c:\mysql\data\bbs\*.* c:\db_bak\bbs\%date:~0,3% /y
net start mysql

%date:~0,3% 取星期縮寫 (如 Mon),自動輪換 7 天;%date:~4,10% 取完整日期可保留每日備份。同樣需停庫。

方案三:mysqldump 邏輯備份 (熱備份,不停庫)

@echo off
"c:\mysql\bin\mysqladmin" -u root --password=123456 shutdown
"c:\mysql\bin\mysqldump" --opt -u root --password=123456 bbs > d:\db_backup\bbs.sql
"c:\mysql\bin\mysqld-nt"

此處為簡化示範先 shutdown 再 mysqldump 再啟動服務,實際生產應直接 mysqldump --single-transaction 熱備份無需停庫。排程每日凌晨 5 點執行。

方案選擇建議

  • 獨立主機、無 DBA 經驗、資料量小:方案一/二 (冷備份) 簡單可靠
  • 7x24 不可停機、資料量大、需點對點恢復:方案三 (熱備份) 或 Percona XtraBackup
  • 所有方案建議異地複製備份檔 (FTP/網路共享/雲存儲)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved