早上上班后,测试说演示环境挂了,维护上去看了下,启动报错了:

XXXXXX08:30:47 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
XXXXXX08:30:50 [Warning] The syntax '--log-slow-queries' is deprecated and will be removed in a future release. Please use '--slow-query-log'/'--slow-query-log-file' instead.
XXXXXX08:30:50 [Note] Plugin 'FEDERATED' is disabled.
XXXXXX08:30:51 InnoDB: The InnoDB memory heap is disabled
XXXXXX08:30:51 InnoDB: Mutexes and rw_locks use InnoDB's own implementation
XXXXXX08:30:51 InnoDB: Compressed tables use zlib 1.2.3
XXXXXX08:30:51 InnoDB: Using Linux native AIO
XXXXXX08:30:51 InnoDB: Initializing buffer pool, size = 16.0M
XXXXXX08:30:51 InnoDB: Completed initialization of buffer pool
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 104857600 bytes!
XXXXXX08:30:51 [ERROR] Plugin 'InnoDB' init function returned error.
XXXXXX08:30:51 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
XXXXXX08:30:51 [ERROR] Unknown/unsupported storage engine: InnoDB
XXXXXX08:30:51 [ERROR] Aborting

网上的说法是“没有正常关闭mysqld服务的情况下,对数据库参数进行改变导致的。因此重启后的服务器不支持InnoDB引擎。

解决方法是:删除MySQL目录下的ib_logfile0和ib_logfile1两个文件”。

其实这有个条件,就是block没有损坏,如果有block损坏了,这样还是无法启动的。

还有个帖子说的是删除mysql目录下的data中所有文件,这不等于完全初始化么?这要是DEMO库就算了,要是线上库、用了几个月的开发、测试库,那重新初始化的成本也太高昂了,况且老板也不允许这么个搞法。

没辙,只能先用innodb_force_recovery=1启动,把数据备份出来,再还原了。

启动后,mysqldump时发现一张表的PK有问题了,没发整个dump出来,是张归档表,直接drop了,其他到问题不大,都出来了。

最后删除所有mysql db数据,重新执行mysql_install_db初始化,最后source alldb.sql还原。

还是得规规矩矩启动和停止,kill db真心有风险。

发现大部分的公司存在的一种现象就是备份嫌烦、standby也嫌烦,然后就宕机了,block损坏了。一拨人干等着一个库。

早上shutdown不掉,kill了下mysqld,导致出现了下僵尸defunct进程,幸亏Kill ps -ef | grep defunct_process_pid父进程成功杀掉了。

MySQL Plugin 'InnoDB' init function returned error一例的更多相关文章

  1. MySQL Plugin 'InnoDB' init function returned error

    . . 在MySQL的配置文件中,设定default-table-type=InnoDB,发现MySQL无法正常的启动,错误日志中给出了如下的信息: 150210 18:11:19 mysqld_sa ...

  2. mysql Plugin ‘InnoDB’ init function returned error

    问题描述: 非正常关闭mysql,同时更改了my.cnf 导致启动时不支持innodb,出现如下错误:   [ERROR] Plugin ‘InnoDB’ init function returned ...

  3. MySQL 从 5.5 升级到 5.6,启动时报错 [ERROR] Plugin 'InnoDB' init function returned error

    MySQL 从 5.5 升级到 5.6,启动时报错: [ERROR] Plugin 'InnoDB' init function returned error. [ERROR] Plugin 'Inn ...

  4. [ERROR] Plugin 'InnoDB' init function returned error

    今天一大早到公司,计划把开发环境的mysql升级到5.7.15,干净关闭系统后,把目录从5.6指向到5.7,一切正常,重新指向5.6启动时,报下列错误: 2016-10-31 08:13:14 869 ...

  5. MariaDB报错Plugin 'InnoDB' init function returned error.解决方案

    重新安装MariaDB后,服务一直启动不起来,查看日志有以下错误: InnoDB: No valid checkpoint found. InnoDB: If you are attempting d ...

  6. mysql innodb init function error

    150414 16:23:07 [ERROR] Plugin 'InnoDB' init function returned error. 150414 16:23:07 [ERROR] Plugin ...

  7. 【MySQL】InnoDB: Error: checksum mismatch in data file 报错

    参考:http://www.jb51.net/article/66951.htm 用5.7版本启动原5.5实例后,再用5.5启动出现以下报错 InnoDB: Error: checksum misma ...

  8. mysql中mysql数据库丢失报错Can't open the mysql.plugin table

    180720 10:00:54 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 18 ...

  9. Mysql drop function xxxx ERROR 1305 (42000): FUNCTION (UDF) xxxx does not exist

    mysql> drop function GetEmployeeInformationByID;ERROR 1305 (42000): FUNCTION (UDF) GetEmployeeInf ...

随机推荐

  1. 在线程池使用Callable和Runnable的区别以及如何关闭线程

    一.区别总结: Callable定义的方法是call,而Runnable定义的方法是run. Callable的call方法可以有返回值,而Runnable的run方法不能有返回值,这是核心区别. C ...

  2. const ,static,inline

    const: 1 定义变量 ,如下写法都可以: TYPE const ValueName = value;                  const TYPE ValueName = value; ...

  3. CSS基础(五):定位

    CSS定位机制 CSS 有三种基本的定位机制:相对定位.浮动和绝对定位. 相对定位 相对定位指的是设置为相对定位的元素框会偏移某个距离.元素仍然保持其未定位前的形状,它原本所占的空间仍保留. 如果将b ...

  4. 跟随标准与Webkit源码探究DOM -- 获取元素之getElementsByTagName

    按照标签名获取元素 -- getElementsByTagName 标准 DOM 1在Element和Document两个interface中均有定义,原型NodeList getElementsBy ...

  5. 对象与Byte数组相互转化工具方法

    /** * 对象转byte * @param obj * @return */ private byte[] ObjectToByte(Object obj) { byte[] bytes = nul ...

  6. Ruby on Rails 和 J2EE:两者能否共存?

    http://www.ibm.com/developerworks/cn/java/wa-rubyonrails/

  7. LINQ to SQL语句非常详细(原文来自于网络)

    LINQ to SQL语句(1)之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子 ...

  8. Rails4 中 因为secret key 引起在production环境下无法运行

    错误信息 Missing `secret_key_base` for 'production' environment, set this value in `config/secrets.yml` ...

  9. IBM X3650 M4服务器安装centos找不到硬盘的解决方法

    IBM X3650 M4是IBM新的2U的服务器,IBM服务器以高稳定性和卓越的性能一直领先其他的服务器品牌成为全球第一.但是我们在用IBM的最新版9.4引导盘引导的时候,里面选项只有windows ...

  10. WebStorm 8 注册码

    UserName:William ===== LICENSE BEGIN ===== 45550-12042010 00001SzFN0n1bPII7FnAxnt0DDOPJA INauvJkeVJB ...