相信很多的个人网站或者中小型网站都比较青睐于使用MYSQL数据库,因为它开源,小巧又节约系统资源。随之而来的就是数据库的备份问题了,下面就来比较一下我收集到的两种常用的备份方法。
方法一:此方法是属于冷备份,为了实现自动备份可以新建一个文本文档改名为“mysqlbak.bat”,比如我要备份test数据库,mysql安装路径为“d:\mysql”,然后右键选择编辑输入如下脚本:
net stop mysql
xcopy D:\mysql\data\test\*.* D:\db_backup\%date:~0,10%\ /y
net start mysql
上面脚本中的xcopy的路径和后面的备份目录的路径可以根据自己实际情况修改,脚本的意思是复制test目录下面的所有文件到db_backup下面的以当天日期命名的目录里面,比如: d:\db_backup\2012-05-28。
方法二:此方法是属于热备份,同样的,像方法一一样要先新建一个批处理文件,然后粘贴如下脚本进去保存:
mysqldump -u test<我是用户名> -ptest<我是密码> test<我是数据库名> >d:\test.sql
上面脚本中的红字部分可以根据自己的实际情况进行修改,实际上是将数据库导出为SQL脚本文件
以上两种方法最终都要将创建的批处理文件添加到计划任务中才能实现自动备份。
两种方法进行比较:
方法一:
缺点:1、备份的时候要关闭数据库,网站不能访问
2、备份时数据破坏的机率较大
优点:1、备份速度快
2、节约系统资源
方法二:
缺点:1、备份速度慢
2、备份时比较占用内存(特别是比较大的数据库)
3、备份出的文件比较大(600K左右的数据库备份成sql文件以后大约占用300M左右的空间)
4、备份时网站无法访问
优点:1、是热备份,不用关闭数据库
2、备份时数据破坏机率小
以上方法就是mysql比较常用的备份方法,不过以上方法只适合对服务器系统有管理权限的情况才适用,如果是用的虚拟主机,可以使用服务商提供的控制面板进行备份或者使用帝国备份,具体如何选择就是仁都见仁智者见智了。 |