1286 Unknown storage engine 'InnoDB'的解决办法

我最近在开发微信的时候,用的是二开框架,在安装数据表的时候,遇到了找不到innodb的问题,最后是解决了,跟大家们分享一下:

首先我们先执行下sql命令语句看看到底是哪些原因:

1.SHOW VARIABLES LIKE 'have_%';这个是检查innodb的状态

2.SHOW ENGINES;这个也可以看到有没有在运行innodb

用第一条语句显示结果中会有如下3种可能的结果:

1.have_innodb YES

2.have_innodb NO

3.have_innodb DISABLED

这3种结果分别对应:

1.已经开启InnoDB引擎

2.未安装InnoDB引擎

3.未启用InnoDB引擎

关于未安装的现象 我们可以执行安装,一般情况下是会支持的

接下来说一下我遇到的未启用的现象

网上经常说的让我们打开my.ini(windows)然后注释掉skip-innodb,但是有些配置文件里面就没有这个选项。。。这个时候我们就陷入可困局

 

别担心,接下来看看这个解决办法

1.先关闭mysql程序

然后打开mysql目录phpStudy\MySQL\data       就是这个data目录下边



我们现在需要把这三个箭头的文件,删掉。

然后我们在打开my.ini

打开innodb的,把myisam#掉

保存

启动mysql

这样就可以了,我们就是这样解决的,希望可以帮到大家!



第一个错误提示说明你运行的 SQL 脚本文件中使用了 InnoDB 存储引擎,但是该引擎可能没有被安装或者被禁用了。你可以通过执行`SHOW ENGINES;`语句来查看当前 MySQL 数据库支持的存储引擎列表,如果 InnoDB 不在列表中,那么你需要启用 InnoDB 引擎。你可以在 MySQL 配置文件中添加或修改以下配置: ``` [mysqld] default-storage-engine=InnoDB innodb_file_per_table=1 innodb_buffer_pool_size=XXG # 根据你的实际情况设置合适的内存大小 ``` 其中,`default-storage-engine`配置项用于指定默认的存储引擎为 InnoDB,`innodb_file_per_table`配置项用于指定每个 InnoDB 表使用独立的表空间,`innodb_buffer_pool_size`配置项用于指定 InnoDB 缓冲池的大小。 第二个错误提示说明你的 SQL 脚本文件中涉及到了一个名为 xuesheng 的表,但是该表可能不存在。你可以通过执行`SHOW TABLES;`语句来查看当前数据库中存在的表,如果 xuesheng 不在列表中,那么你需要创建该表。你可以执行以下 SQL 语句来创建 xuesheng 表: ``` CREATE TABLE xuesheng ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, name VARCHAR(30) NOT NULL, age TINYINT UNSIGNED NOT NULL, sex ENUM('男', '女') NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ``` 其中,`id`字段为自增字段,`name`字段为字符串类型,`age`字段为无符号的小整数类型,`sex`字段为枚举类型。注意,这里的存储引擎也是 InnoDB
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值