前言

之前正式服务器数据库挂掉了,被其他同事覆盖数据库,导致正在使用的数据库无法访问,并且所有配置全部丢失,幸好data数据存储在其他路径免受劫难。
在恢复之前,为避免有人往实例里写入内容,所以在my.cnf/my.ini(Linux=my.cnf,Windows=my.ini)内添加了innodb_force_recovery=4

正文

innodb_force_recovery影响整个innodb存储引擎的恢复状况

说明

在未配置属性innodb_force_recovery时,它默认值是0(表示可执行所有),并且不存在于my.cnf/my.ini内。
innodb_force_recovery的参数值可以为0-6,当其大于0时,可以对表进行select、create、drop操作,但insert、update、delete是不允许的。并且重要的一点是,当设置为大于0后,以下条目是包含状态:
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):不执行前滚的操作。

附加

innodb_purge_threads 

该参数用于定义处理innodb的清除操作模式,默认的是定期回收无用数据的操作。在之前的几个版本中,清除操作是主线程的一部分,这意味着运行时它可能会堵塞其它的数据库操作。
从MySQL5.5.X版本开始,该操作运行于独立的线程中,并支持更多的并发数。用户可通过设置innodb_purge_threads配置参数来选择清除操作是否使用单独线程。
默认为0,即不启用。设置为 1 时表示使用单独的清除线程。

楼主因为设置过innodb_purge_threads=1,然后又在进行上面操作时更改了innodb_force_recovery=4,之后导致出现无限loop情况。
查询原因发现,mysql源码控制了这2个参数的设置,如果同时启用,则一直挂起在循环内,所以在开启innodb_force_recovery时,注意将innodb_purge_threads=0.

MySQL错误Got error -1 from storage engine相关推荐

  1. Navicat for MySQL出现1030-Got error 28 from storage engine错误

    Navicat for MySQL出现1030-Got error 28 from storage engine错误    刚刚还能用这会儿就用不了了,估计是磁盘空间不足引起的!  在根目录/下执行命 ...

  2. Mysql报Got error 28 from storage engine错误问题

    今天早上准备把Mysql数据库里面的表结构导出来,在执行sql的过程中报Got error 28 from storage engine错误如下图所示: 根据报的错误的语义很明显发现时存储发生了问题, ...

  3. MySQ 错误 Got error 28 from storage engine

    2019独角兽企业重金招聘Python工程师标准>>> 解决方法: 分区被日志文件占满导致MySQL死掉,清空mysql日志文件方法 2011-06-07 21:33 环境:mysq ...

  4. Mysql 出现Got error 28 from storage engine

    今天 来了 ,内网测试机数据库打开后提示 Got error 28 from storage engine 原来是昨天导数据 ,完了删除旧数据,/ 磁盘 100%, /tmp目录自然也满了. 解决:1 ...

  5. Mysql 1030 Got error -1 from storage engine 错误解决

    检查你的my.cnf或my.ini,里面会有一个参数innodb_force_recovery,你看看他的值,默认是没有这个参数,没有的话,他的默认值是0,这个参数的值如果大于0,innodb会被禁止 ...

  6. mysql error 28,MySQL错误:Got error 28 from storage engine

    2010-03-01 MySQL错误:Got error 28 from storage engine 今天访问博客文章时出现500错误,详细MySQL错误为:Got error 28 from st ...

  7. mysql error -1_【Mysql】SQLException: Got error -1 from storage engine 问题解决!

    错误信息: Caused by: java.sql.BatchUpdateException: Got error -1 from storage engine at com.mysql.jdbc.P ...

  8. Got error 28 from storage engine的错误怎么办

    晚上例行检查数据库,发现Got error 28 from storage engine这个错误,天那,我的数据.心里哇凉.... 备份的时间还是很久以前.最近更新了不少,麻烦大了. 好在找到了解决方 ...

  9. Mysql:Got error 28 from storage engine

    今天一大早,领导给我打电话,说系统进不去了,报个Got error 28 from storage engine的错误. 看到这个错误,应该不是昨天更新程序造成的.看起来是MYSQL出问题了.用mys ...

  10. mysql hy000 1030_解决MySQL数据库SQL Error:1030, SQLState: HY000,Got error 28 from storage engine...

    解决MySQL数据库SQL Error:1030, SQLState: HY000,Got error 28 from storage engine MySQL数据库报以下错误: ERROR 22-0 ...

最新文章

  1. jdbc封装mysql_实用JDBC数据库查询封装
  2. TCP UDP 协议深度解析 (未完待续)
  3. ROS系统 C++或Python实现订阅者Subscriber
  4. (拿来主义-8) Spring Boot属性配置文件详解(三)
  5. Linq Coding -- Part Eight (Equals Topic)
  6. ok计数器使用教程_EEGLAB教程系列数据叠加平均{1}(Data averaging)|EEGLAB(7)
  7. JSP的生命周期研究
  8. 给用过SAP CRM中间件的老哥老姐们讲讲SAP CPI
  9. 旅途中的人物之一:卖菜老人
  10. 堆排序java实例_堆排序(示例代码)
  11. 光栅衍射主极大个数_基于达曼光栅的双目视觉系统
  12. dubbo服务RpcException异常:Tried 3 times of the providers 或com.alibaba.dubbo.remoting.TimeoutException
  13. Java文档对象_java从文件读取对象
  14. linux查看日志方法
  15. 开源ESB-ServiceMix服务总线
  16. 21年GitHub上最牛批的《Java工程师成神之路》最新版文档!限时开源
  17. C. Wilbur and Points(简单贪心加合法性判断)
  18. 11个免费高清图片下载站
  19. 计算机组成与设计project1,计算机组成与体系结构(性能设计)答案完整版-第八版...
  20. 什么是Nginx服务器

热门文章

  1. 上网访问速度慢的原因(计算机网络常识)
  2. 如何批量查询百度指数
  3. 【LeetCode - 317】离建筑物最近的距离
  4. 如何保护自己的个人隐私
  5. Android花样Text设置神器之SpanableString
  6. 程序员因接外包坐牢!两万字长文揭露心酸真实经历
  7. 计算机链接投影仪后不显示桌面,win10系统连接投影后不显示桌面图标怎么办
  8. matlab ramp函数,一文教你快速搞懂 FOC ramp function 斜坡函数的作用和实现
  9. C虾仔笔记 - ScrollView垂向滚动视图
  10. 第一阶段冲刺 博客评价