Windows批处理备份mysql
服务器使用windows2008rc,用批处理写一个mysql的备份脚本,放到Windows计划任务,每天零时执行。
- 使用mysql自带的
mysqldump
命令备份整个数据库 - 使用好压的命令行压缩
- 保留一周备份文件
- 写入日志
详细代码如下:
@echo off
set "ymd=%date:~,4%%date:~5,2%%date:~8,2%"
set storeDir="F:\databases\%ymd%"
set /A keepFromDay=%ymd%-7
md %storeDir% 2>nul
"E:\xampp\mysql\bin\mysqldump.exe" -u用户名 -p密码 --lock-tables --all-databases > %storeDir%\db.sql 2>nul
echo Haozip loading...
cd /d %storeDir%
"C:\Program Files\HaoZip\HaoZipC.exe" a -tzip db.sql.zip db.sql
del /q db.sql
rem del 7 days backup files
@echo off
for /f %%i in ('dir /b ..\') do (
if %%i LSS %keepFromDay% (
echo deleting %%i
rd /s /q "F:\databases\%%i"
)
)
echo Finish at %date% %time% >> ../backup.log