备份mysql一直是很多朋友比较头痛的问题,尤其是按按时间段备份,今天笔者将以图文教程的方法教你每天如何一键备份mysql数据库文件。
1、先是建立批处理文件,将以下代码另存为.bat文件,文件名最好为英文。注意下面的路径,以笔者自己的数据库为例,数据库安装在D盘下mysql\mysql下,备份位置在F:\beifen,后面的代码是日期。
- @echooff
- color0D
- MODEcon:COLS=71LINES=25
- titlemysql数据库自动备份脚本(任务计划)--脚本作者:http://www.***.com
- setsou_dir="D:\mysql\Mysql\data"
- setobj_dir=F:\beifen\%date:~0,10%
- netstopmysql
- md%obj_dir%
- xcopy/e/y%sou_dir%%obj_dir%
- netstartmysql
- @echooff&setlocalenabledelayedexpansion
- call:D,30
- echo.30天前日期为:%D%
- echo.删除30天以前备份......
- ifexistF:\beifen\%D%rd/s/qF:\beifen\%D%
- echo自动备份完成,程序将自动退出......
- ping-n2127.0.0>nul
- exit
- :D
- for/f"tokens=1-3delims=-:/"%%ain("%date%")do(
- setY=%%a&setM=%%b&setD=%%c
- if"!M:~0,1!"=="0"setM=!M:~1!
- if"!D:~0,1!"=="0"setD=!D:~1!
- )
- set/aD-=%1
- if%D%gtr0goto:Y
- :M
- set/aM-=1
- if!M!==0set/aY-=1,M=12
- set/a"T=^!(M-2)","R=(^!(Y%%4)&^!^!(Y%%100))|^!(Y%%400)","C=^!(M-4)|^!(M-6)|^!(M-9)|^!(M-11)","D=T*(28+R)+C*30+(^!T&^!C)
- *31+D"
- if%D%leq0goto:M
- :Y
- setM=0%M%&setD=0%D%&setD=%Y%-!M:~-2!-!D:~-2!
2、建立一个计划任务,可以每天或三天,甚至更长时间备份,备份时mysql自动停止,备份完成后,mysql会自动启动。打开控制面板---双击任务计划,按照提示一步步选择,如下图所示:
3、我们可以根据需要设定每天、每周或其他日期定期备份mysql数据库。笔者实验过,完全满足我们日常mysql数据库备份工作需要。




























