备份恢复数据库

全备份
mysqldump -utest -ptest --all-databases >/tmp/mysqldump.sql
备份单个数据库
mysqldump -utest -ptest mysql >/tmp/mysqldump.sql
恢复的时候首先登陆mysql -utest -p**
然后source /tmp/mysqldump.sql
mysqlhotcopy与mysqldump区别见http://baike.baidu.com/view/3239734.htm
备份单个表
SELECT * INTO OUTFILE 'file_name' FROM tbl_name
回复单个表
LOAD DATA INFILE 'file_name' REPLACE ....  这样可以防止重复的行,不过这表必须有priary key,或者唯一的行
二进制恢复数据库
http://blog.chinaunix.net/space.php?uid=259788&do=blog&id=2139251

总结下可以使这样的:
首先进行全备份,同时让二进制日志重新的开始记录命令如下:

mysqldump --single-transaction --flush-logs --master-data=2 \
         --all-databases > backup_sunday_1_PM.sql
当崩溃的时候生成了gbichot2-bin.000007 gbichot2-bin.000008这两个日志
那么恢复如下:
1.mysql -uroot -p < backup_sunday_1_PM.sql
2. mysqlbinlog gbichot2-bin.000007 gbichot2-bin.000008 | mysql -uroot -p

你可能感兴趣的:(数据库)