from http://hi.baidu.com/hyvpuqcjncagilr/item/7b55bc5bc49ad213db16355d
1、备份
摘要:mysqldump是备份mysql数据库的一种好工具。它相对于用phpmyadmin等备份工具更加快速,又避免受php.ini等的限制,在windows系统下还可以结合计划任务实现定时远程备份数据库。...
mysqldump是备份mysql数据库的一种好工具。它相对于用phpmyadmin等备份工具更加快速,又避免受php.ini等的限制,在windows系统下还可以结合计划任务实现定时远程备份数据库。
操作用mysqldump备份数据库的用户需要的权限比较小,只需要select和lock table的权限就足够了。所以可以创建一个备份数据库的用户,专门用于备份数据库,这样可以避免数据库受到意外的破坏。
在备份数据库之前我们要做足准备功夫,首先创建了执行备份操作的数据库用户——backup,密码为:123456。其次,确定我们要备份哪个数据库,放在哪里。然后,确定数据库的备份文件要放到哪里。
假设我们的任务是要备份一个位于192.168.1.2服务器上,名称为backup_test的数据库,并把备份文件放到D:\bak\的文件夹中。又假设我们的操作系统为windows xp,于是我们可以用以下的方法执行备份操作:
我们可以使用windows自带的命令提示符(调用命令提示符的方法有多种,最常用的就是点击开始菜单,选择“运行”,输入cmd的命令就可以启动了),在命令提示符中输入以下命令:
$>mysqldump -u 用户名 -h ip地址 -p 数据库名 > D:\bak\bakcup.sql
$>Enter password:password在这段命令中:
mysqldump 是myqldump的程序名了;
-u 是数据库的用户名,后面紧跟着用户名backup;
-p是数据库的密码,后面同样紧跟着密码,注意是-p和密码之间不能有空格;
-h 是数据库的地址,如果没有此项表明是备份本地的数据库;
backup_test 要备份的数据库名称;
> 表明该数据库备份到后面的文件,紧跟当然是备份文件的地址了,注意要用绝对文件路径,文件的后缀也可以用.txt。
一旦执行该命令后,mysqldump立即执行备份操作。远程备份数据库要似乎网络的情况,一般远程备份需要一定的时间的。
如果把这个命令写成批处理文件,通过windows的计划任务可以实现定时备份数据。
在windows下用mysqldump备份数据库,因为没有gzip的压缩引擎,因此不能对备份数据库进行压缩,因此如果备份文件多了要经常清理过期的数据库备份文件。
本文摘自 www.hackline.net 转载请注明!
原文链接:http://www.hackline.net/a/Special/wzjs/web/2009/1018/1097.html
以下在我本机上测试过
数据库文件恢复:
$>mysqldump -u username -p databasename > D:\test\bakcup.sql
回车
Enter password:password
回车
如果只恢复一个表:
$>mysqldump -u username -p databasename tablename > D:\test\bakup.sql
回车
Enter password:password
回车
username:用户名
password:密码
databasename:数据库名
tablename:要恢复数据库中的那个表名
D:\test\bakup.sql:是你当时备份的那个文件的绝对路径和名字
$>mysql -u 用户名 -p 数据库名< 备份文件.sql
Enter password:密码
eg:$>mysql -u root -p test<D:\test\test.sql
回车
Enter password :123