如何在windows下用bat脚本定时备份mysql

如何在windows下用bat脚本定时备份mysql,第1张

并不是所有MySQL都运行在Linux下,windows下也需要做例行备份,下面是用bat脚本做自动化备份的例子,大家可以参考下。

remrem C:\Program Files\WinRAR 需要放到 path 下,才能调用rar cli工具remrem 跳转到工作目录下f:cd f:\DBBAK

rem 设置变量:备份文件名

SET BAK_FILE=MY_DBBAK_%date:~0,-4%.sql

rem 设置变量:日志文件名

SET LOG_FILE=MY_DBBAK.log

rem 记录日志

echo "%date%" 》 %LOG_FILE%

rem 开始做备份

mysqldump --default-character-set=utf8 -hlocalhost -uroot -R --triggers --single-transaction -B mydb %BAK_FILE%

rem 压缩备份文件

rar a %BAK_FILE%.rar %BAK_FILE%

rem 删除源文件

del /F %BAK_FILE%

echo "%date%" 》 %LOG_FILE%

部署完脚本后,剩下的就是在系统中添加计划任务项目了。

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

md "E:\数据备份\%ymd%"

"D:\MySQL\bin\mysqldump.exe" --opt -Q mysql -uroot -p123456789 >

E:\数据备份\%Ymd%\mysql.sql

REM ..... 这里可以添加更多的命令,要看你有多少个数据库,其中 -Q 后面是数据库名称

-p紧跟后面是密码

echo Winrar loading...

"C:\Program Files\WinRAR\WinRAR.exe" a

-ep1 -r -o+ -m5 -df "E:\数据备份\%Ymd%.rar" "E:\数据备份\%Ymd%"

echo OK!

把上面的命令保存为 backup.bat ,双击运行,就开始备份数据了。

第一句是建立一个变量 %Ymd% ,通过

%date% 这个系统变量得到日期,%date:~,4% 表示取日期的前面4个字符就是年份,%%date:~5,2%

表示取日期第5个字符开始的2个字符就是月份,%date:~8,2% 这个就是日期号数,如 2009-06-20 这个日期最后得到的结果是 20090620

第二句就是使用变量 %Ymd% 的值建立一个空的文件夹。

第三句开始就是使用MySQL的命令对数据库mysql进行备份,并存储在

E:\数据备份\%ymd% 这个文件夹下面,这里可以有很多类似的命令,备份多个数据库。

最后就是使用 WinRAR 对备份的数据进行压缩,并存储为以

%Ymd% 变量值建立的RAR文件名,同时删除备份的 %Ymd% 目录。

如果你想让系统自动定期备份,就可以通过系统的任务计划定期执行这个命令。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6094755.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-14
下一篇 2023-03-14

发表评论

登录后才能评论

评论列表(0条)

保存