mysql迁移报错
将MySQL目录直接拷贝迁移,过程不详述,数据库正常启动,但是不能正常使用,select查表报表不存在,然后发现日志报错如下
东湖网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站设计等网站项目制作,到程序开发,运营维护。创新互联建站2013年至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
InnoDB: Doing recovery: scanned up to log sequence number 265335480935
170504 15:56:39 InnoDB: Error: page 311313 log sequence number 265338125392
InnoDB: is in the future! Current system log sequence number 265335480935.
InnoDB: Your database may be corrupt or you may have copied the InnoDB
InnoDB: tablespace but not the InnoDB log files
解决办法:
在/etc/my.cnf文件的[mysqld]下添加
innodb_force_recovery = 4
重启mysqld恢复正常,问题解决,记得之后将“innodb_force_recovery = 4”删掉再重启一次,否则还会出现问题
关于innodb_force_recovery的一些说明
innodb_force_recovery可以设置为1-6,大的数字包含前面所有数字的影响。
1. (SRV_FORCE_IGNORE_CORRUPT):忽略检查到的corrupt页。
2. (SRV_FORCE_NO_BACKGROUND):阻止主线程的运行,如主线程需要执行full purge操作,会导致crash。
3. (SRV_FORCE_NO_TRX_UNDO):不执行事务回滚操作。
4. (SRV_FORCE_NO_IBUF_MERGE):不执行插入缓冲的合并操作。
5. (SRV_FORCE_NO_UNDO_LOG_SCAN):不查看重做日志,InnoDB存储引擎会将未提交的事务视为已提交。
6. (SRV_FORCE_NO_LOG_REDO):不执行前滚的操作。
本文标题:mysql迁移报错
标题来源:http://scyanting.com/article/jcejic.html