首页 > 数据库 > innodb force recovery
您的足迹
  • 你没有浏览过任何文章或者你没有开启cookies。

innodb force recovery

今天从一台正式环境用VMWARE克隆一台机器,克隆过来发现虚拟机中的MYSQL就起不来,查看日志如下:

   48 InnoDB: Progress in MB: 100
   49 InnoDB: The log sequence number in ibdata files does not match
   50 InnoDB: the log sequence number in the ib_logfiles!
   51 111104  6:27:26  InnoDB: Database was not shut down normally!
   52 InnoDB: Starting crash recovery.
   53 InnoDB: Reading tablespace information from the .ibd files...
   54 InnoDB: Restoring possible half-written data pages from the doublewrite
   55 InnoDB: buffer...
   56 111104  6:27:27  InnoDB: Started; log sequence number 0 345100
   57 111104  6:27:27 [Warning] 'user' entry 'root@dev-jira' ignored in --skip-name-resolve mode.
   58 111104  6:27:27 [Warning] 'user' entry '@dev-jira' ignored in --skip-name-resolve mode.
   59 111104  6:27:27 [Note] /usr/libexec/mysqld: ready for connections.
   60 Version: '5.0.77-log'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  Source distribution
   61 111104  6:37:34 [Warning] 'user' entry 'root@dev-jira' ignored in --skip-name-resolve mode.
   62 111104  6:37:34 [Warning] 'user' entry '@dev-jira' ignored in --skip-name-resolve mode.
   63 111104  7:19:30 [Note] /usr/libexec/mysqld: Normal shutdown

看起来是启动检查日志失败了,网上搜索了一下,把启动检查日志给禁用就可以了。

下面说下innodb force recovery的6种设置:

1.innodb force recovery=1,即使发现了损坏页面也继续让服务器继续运行,这个选项对于备份或者转存当前数据尤为有用
2.innodb force recovery=2,阻止恢复主线程的运行,如果清除操作会导致服务器挂掉
3.innodb force recovery=3,恢复后不回滚事务
4.innodb force recovery=4,如果插入到缓冲区的合并操作会导致系统崩溃,将不会被执行
5.innodb force recovery=5,启动数据库时,忽略撤消日志
6. innodb force recovery=6,启动数据库时,忽略与恢复相关的前滚日志

这个办法只适用与测试库或者不那么敏感的数据库,对于线上库应该立即将服务连向镜像库,恢复产品库,然后将服务连上产品库

  1. 还没有评论
评论提交中, 请稍候...

留言

可以使用的标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackbacks & Pingbacks ( 0 )
  1. 还没有 trackbacks
Feed