Maison > Article > base de données > 批处理命令 BAT备份MySQL数据库
工作环境 Windows Server 2003 ,MySQL安装目录 D:/MySQL , WinRAR 安装目录 C:/Program Files/WinRAR/WinRAR.exe备份数据存储的路径为 E:/数据备份,好了下面开始写DOS批处理命令了。代码如下:
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% 目录。
如果你想让系统自动定期备份,就可以通过系统的任务计划定期执行这个命令