【Mysql问题集锦(1)】mysql不能使用innodb存储引擎

案例:
一台服务器,操作系统centos,使用 yum 安装mysql ,之前innodb存储引擎一直是可以用的,某天之后,突然不能用了,使用innodb存储引擎的数据库导入后存储引擎全部变成了myisam.进入mysql,

mysql > show engines;
show engineS\G
*************************** 1. row ***************************
Engine: MyISAM
Support: DEFAULT
Comment: Default engine as of MySQL 3.23 with great performance
*************************** 2. row ***************************
Engine: MEMORY
Support: YES
Comment: Hash based, stored in memory, useful for temporary tables
*************************** 3. row ***************************
Engine: InnoDB
Support: NO
~~~~~~~~~以下内容略~~~~~
12 rows in set (4.21 sec)

显示不支持innoDB,
在/etc/my.cnf 中添加 default-storge-engine=innodb,重启mysql失败,查看mysql日志,报错日志显示:Default storage engine (InnoDB) is not available
原因:
设置过的表空间ibdata1文件在Mysql第一次启动时候已经创建,大小为设置的10M,一但新设定的 ibdata1 的大小不一致,就会出现问题.可能是中间改过表空间或innodb日志文件的大小设置,但却没有删除掉表空间文件与innodb日志文件引起.
解决方法:

  1. 删除在MySQL安装目录下的Data目录中的
    ib_logfile0
    ib_logfile1
  2. 找到在配置MySQL服务器时指定的InfoDB目录删除掉
    ibdata1
  3. 重新启动MySQL
    原文作者:菜问
    原文地址: https://segmentfault.com/a/1190000019585111
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞