mysql执行sql文件报错Error: Unknown storage engine‘InnoDB’解决方法

本文介绍了如何解决在MySQL5.5版本中运行InnoDB类型SQL文件时遇到的未知存储引擎错误。通过检查日志文件定位问题所在,发现ibdata1文件损坏导致InnoDB无法加载。文章详细记录了关闭服务、删除问题文件、修改my.ini配置参数等步骤,并最终成功解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

发现问题

最近在工作中遇到一个问题,在运行了一个innoDB类型的sql文件,报了Error: Unknown storage engine 'InnoDB’错误,网上查了很多方法,但是都没办法真正解决我的问题,后来解决了,在这里总结一下过程,方便有遇到类似情况的朋友们可以有的参照,下面话不多说,来一起看看详细的介绍吧。

解决过程:

我用的是MySql5.5版本的数据库。出现以上错误的时候先用命令-》show engines;查看一下引擎详情:
在这里插入图片描述

发现并没有innodb这个条目:

然后我们查看日志文件:

不知道windowns日志文件位置的可以用命令->show variables like '%error%';查看
在这里插入图片描述

然后:在日志中我们发现:
在这里插入图片描述

错误在于ibdata1文件内容有误。

接下来,我们关闭数据服务,删除安装目录下的ibadata1文件,和错误日志同目录下的两个文件:看下图
在这里插入图片描述
删除成功后,更改my.ini文件参数。

innodb_buffer_pool_size = 256M
 
innodb_log_file_size  = 256M
 
innodb_thread_concurrency = 16
 
innodb_flush_log_at_trx_commit = 2
 
innodb_flush_method  = normal

其中innodb_flush_method = normal是最后补进去的,其他的参数原来配置文件中都有。

更改完成后,保存并从新启动mysql服务。

再次执行-》show engines;

发现innoDB已经可以使用了,这样就表示成功了。

再次去运行刚才的文件就能完美运行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值