mysql执行sql文件报错Error: Unknown storage engine‘InnoDB’的解决方法
发现问题
最近在工作中遇到一个问题,在运行了一个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已经可以使用了,这样就表示成功了。
再次去运行刚才的文件就能完美运行了。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
MySQL 5.7.16 修改密码提示 ERROR 1054 (42S22): Unknown column ''password'' in ''field list''的原因
按照网上之前版本的操作,将my.ini中的skip-grant-tables注释去掉,然后在命令行中以mysql -u root -p可以直接进入,但是执行 mysql> update mysql.user set password=password('password') where user='root'; 会出现以下错误 mysql> ERROR 1054 (42S22): Unknown column 'password' in 'field list' 错误原因:mysql数据库下已
-
MySQL重置root密码提示"Unknown column ‘password"的解决方法
晚上打开MAC,发现root帐户突然不能正常登陆MySQL,于是打算重置密码,看了几篇文章,竟然重置不成功,总是得到Unknown column 'password'的错误,看了user的表结构也确实没有该字段了.经查发现是MySQL升级后将字段名给改了,password名称改为authentication_string了.知道原因后,按照如下命令就可以成功重置root密码了. $sudo mysql.server stop #先关闭正常的MySQL服务 $sudo mysqld_safe --
-
mysql执行sql文件报错Error: Unknown storage engine‘InnoDB’的解决方法
发现问题 最近在工作中遇到一个问题,在运行了一个innoDB类型的sql文件,报了Error: Unknown storage engine 'InnoDB'错误,网上查了很多方法,但是都没办法真正解决我的问题,后来解决了,在这里总结一下过程,方便有遇到类似情况的朋友们可以有的参照,下面话不多说,来一起看看详细的介绍吧. 解决过程: 我用的是MySql5.5版本的数据库.出现以上错误的时候先用命令->show engines;查看一下引擎详情: 发现并没有innodb这个条目: 然后我们查看日志
-
mysql导入sql文件报错 ERROR 2013 2006 2002
今天导入sql总是提示错误 复制代码 代码如下: ERROR 2013 (HY000): Lost connection to MySQL server during query ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/va
-
MySQL报错:sql_mode=only_full_group_by的4种轻松解决方法(含举例)
目录 前言 方法一:直接修改数据库配置 方法二:修改数据库配置(永久生效) 方法三:使用 any_value() 或 group_concat() 方法四:开动脑筋,修改代码 总结 前言 作为初学者,我们在使用MySQL的时候总是会遇到各种各样的报错,让人头痛不已.其中有一种报错,sql_mode=only_full_group_by,十分常见,每次都是老长的一串出现,然后带走你所有的好心情 出现这样的报错,并不是因为你的代码写得不好,而是因为在MySQL 5.7后,MySQL默认开启了SQ
-
Maven install 报错"程序包不存在"问题的解决方法
概述 在mvn clean install时,控制台各种报错,大概有: java:[8,52] 程序包com.xxx不存在 java:[98,27] 找不到符号 符号: 类 XXX 位置: 类XXX [ERROR] COMPILATION ERROR : Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure at org.apache.maven.plugin.c
-
Python使用pickle模块报错EOFError Ran out of input的解决方法
本文实例讲述了Python使用pickle模块报错EOFError Ran out of input的解决方法.分享给大家供大家参考,具体如下: 遇到了 EOFError:Ran out of input 不到为什么这样,最后用捕获异常的办法解决掉了,暂时对程序本身没有啥影响,代码如下: # coding=utf-8 import pickle def usr_date(): try: with open('usr_date.pkl','rb') as f: return pickle.load
-
安装CentOS 6.x报错"Disk sda contains BIOS RAID metadata"解决方法
今天在安装CentOS6.2的时候,当进到检测硬盘的时候,总是过不去,报错如下: Disk sda contains BIOS RAID metadata, but is not part of any recognized BIOS RAID sets. Ignoring disk sda 这种情况在Ubuntu,SUSE都有类似的情况,只是提示不太一样. 有时候是sda,有时候是sdb. 感觉是这块硬盘以前是做过raid,现在不认.怎么办. 进入安装选择菜单时 按TAB键,会进入到Linux
-
安装CentOS 6.x报错"Disk sda contains BIOS RAID metadata"解决方法
今天在安装CentOS6.2的时候,当进到检测硬盘的时候,总是过不去,报错如下: Disk sda contains BIOS RAID metadata, but is not part of any recognized BIOS RAID sets. Ignoring disk sda 这种情况在Ubuntu,SUSE都有类似的情况,只是提示不太一样. 有时候是sda,有时候是sdb. 感觉是这块硬盘以前是做过raid,现在不认.怎么办. 进入安装选择菜单时 按TAB键,会进入到Linux
-
MySQL在grant时报错ERROR 1064 (42000)的原因及解决方法
网上查到的grant方式大多会报错,主要原因是MySQL版本8.0后不能再使用原来的方式 查询MySQL版本 SELECT version(); 在8.0版本下 grant all privileges on test.* to test@'%' identified by '123456'; 报错 ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your
-
Finished with error:Navicat运行SQL文件报错的解决
目录 问题描述 错误原因 解决方法 其他问题 字符集问题 运行选项问题 SQL代码问题 总结 问题描述 使用 Navicat 导入之前转储好的 sql 文件,报错 错误原因 在信息日志当中往上翻,发现没有选择数据库,所以报错的原因就是没有提前创建好一个同名的空数据库 解决方法 创建SQL文件对应的数据库名,然后找到对应数据库, 右键 运行SQL文件! 错误解决 其他问题 字符集问题 注意保证原数据库的字符集,排序方式 和 新建数据库的一致 运行选项问题 有时候把这个选项取消选中,再运行就
-
sql无效字符 执行sql语句报错解决方案
说起来惭愧,总是犯一些小错误,纠结半天,这不应为一个分号的玩意折腾了好半天! 错误时在执行SQL语句的时候发出的,信息如下: Java代码 [default][2012-11-22 11:35:58,552][ERROR] Java代码 [com.primeton.common.connection.impl.synchronization.TraceLoggerStatementSynchronization:49] Java代码 Sql[INSERT INTO ASE_SYSTEM_LOG
随机推荐
- 正则表达式提取img的src
- 最详细的SQL注入相关的命令整理 (转)第1/2页
- 了解redis中RDB结构_动力节点Java学院整理
- 解决vue.js在编写过程中出现空格不规范报错的问题
- PHP 木马攻击防御技巧
- MYSQL主从不同步延迟原理分析及解决方案
- php取整函数ceil,floo,round的用法及介绍
- 使用JavaScript实现旋转的彩圈特效
- linux shell命令的常用快捷键
- 写的不错批处理教程一
- python中zip()方法应用实例分析
- JQuery的Pager分页器实现代码
- javascript表单事件处理方法详解
- php模拟用户自动在qq空间发表文章的方法
- Android 注册广播的两种方式对比
- XP的局域网互访
- vue+vue-validator 表单验证功能的实现代码
- PHP实现统计一个数字在排序数组中出现次数的方法
- spring cloud中启动Eureka Server的方法
- AI算法实现五子棋(java)