1、测试mysql数据库备份命令是否可用
"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqldump" -u root -proot mydb > c:/mydb.sql
2、编辑编写mysqlback.bat脚本
@echo off
color 0D
MODE con: COLS=71 LINES=25
title mysql数据库自动备份脚本(任务计划)
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
set "obj_dir= d:\sqlback\"
md %obj_dir%
@echo 开始备份数据库。
echo %Ymd% Start backing up database files... >> sqlback.log
"C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqldump" -u root -proot mydb > %obj_dir%\%Ymd%mydb.sql
@echo 删除七天前备份的文件。
forfiles /p "d:\sqlback" /s /m *.sql /d -7 /c "cmd /c del @path"
echo %Ymd% Delete expired files! >> sqlback.log
echo %Ymd% Successfully backed up the database files! >> sqlback.log
@echo 数据库备份完成,3秒后程序退出。
ping /n 3 127.0.0.1 >nul
exit
3、将mysqlback.bat命令加入任务计划
所有程序-附件-系统工具-任务计划程序-
(1)创建基本任务:输入计划名称和描述
(2)触发器:选择每天
(3)每日:设置触发时间,每隔一天发生一次
(4)操作:启动程序
(5)启动程序:选择附件中的bat脚本。
(6)完成。
备注:
配置mysql中的bin目录到环境变量在测试时备份没问题,但放到定时任务时就会提示“mysqldum”不是内部命令,最后调整根路径的方式就可以了,注意根路径一定要加上双引号