MySQL数据故障时备份与恢复
1、ib_logfile0和ib_logfile1是mysql用来存储操作执行的日志文件,用于事务暂存和回滚。当复制ibdata1数据文件到新的mysql中时,如果没有拷贝这两个日志文件,则会出现启动不启来。在.err文件中
InnoDB: Your database may be corrupt or you may have copied the InnoDB
log文件无法被识别
如下方式操作,恢复并还原数据库
命令行方式启动:
1
进入bin目录 mysqld-nt --innodb_force_recovery=4 //以只读方式启动数据
然后这个窗口不要管了。
2备份数据库
mysqldump -u** -p** --opt --add-drop-table youdatabase > backupfilepath
3删除数据库
drop database thedatabase
4退出mysql,结束mysql进程
5将mysql data目录下,除了目录以外的几个文件删除,
6重新正常启动mysql mysqld
7创建数据库 create database youdatabase
8恢复 mysql -u** -p** yourdatabase < backupfilepath