windows mysql 自动备份的几种方法汇总 |
基于之前的文章方法,加入批处理命令即可实现自动备份 。只是由于批处理命令中对于备份文件的名字按照时间命名比较特别,所以特别整理一文 。 1、复制date文件夹备份 ============================ 假想环境: MySQL 安装位置:C:\MySQL 论坛数据库名称为:bbs 数据库备份目的地:C:\db_bak\ ============================ 新建db_bak.bat,写入以下代码 *******************************Code Start***************************** net stop mysql xcopy c:\mysql\data\bbs\*.* c:\db_bak\bbs\%date:'0,10%\ /S /I net start mysql *******************************Code End ***************************** 然后使用Windows的“计划任务”定时执行该批处理脚本即可 。(例如:每天凌晨3点执行back_db.bat) 2、mysqldump备份成sql文件 ============== 假想环境: MySQL 安装位置:C:\MySQL 论坛数据库名称为:bbs MySQL root 密码:123456 数据库备份目的地:D:\db_backup\ 脚本: rem *******************************Code Start***************************** @echo off set "Ymd=%date:',4%%date:'5,2%%date:'8,2%" C:\MySQL\bin\mysqldump --opt -u root --password=123456 bbs > D:\db_backup\bbs_%Ymd%.sql @echo on rem *******************************Code End***************************** 将以上代码保存为backup_db.bat 说明:此方法可以不用关闭数据库,并且可以按每一天的时间来名称备份文件 。 通过%date:'5,2%来组合得出当前日期,组合的效果为yyyymmdd,date命令得到的日期格式默认为yyyy-mm-dd(如果不是此格式可以通过pause命令来暂停命令行窗口看通过%date:',20%得到的当前计算机日期格式),所以通过%date:'5,2%即可得到日期中的第五个字符开始的两个字符,例如今天为2009-02-05,通过%date:'5,2%则可以得到02 。(日期的字符串的下标是从0开始的) 3、利用WinRAR对MySQL数据库进行定时备份 。 对于MySQL的备份,最好的方法就是直接备份MySQL数据库的Data目录 。下面提供了一个利用WinRAR来对Data目录进行定时备份的方法 。 首先当然要把WinRAR安装到计算机上 。 将下面的命令写入到一个文本文件里 *******************************Code Start***************************** @echo off set "Ymd=%date:',4%%date:'5,2%%date:'8,2%" C:\MySQL\bin\mysqldump --opt -u root --password=123456 bbs > D:\db_backup\bbs_%Ymd%.sql @echo on *******************************Code End***************************** 保存,然后将文本文件的扩展名修改成CMD 。进入控制面版,打开计划任务,双击“添加计划任务” 。在计划任务向导中找到刚才的CMD文件,接着为这个任务指定一个运行时间和运行时使用的账号密码就可以了 。 这种方法缺点是占用时间比较多,备份期间压缩需要时间,mysql断开比第一种方法更多的时间,但是对于文件命名很好 。 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家! |