提示信息明显,缺少InnoDb数据库引擎。

命令行下查看一下可用数据库引擎:


mysql> show engines;

+————+———+————

| Engine   | Support | Comment …

+————+———+————

| MEMORY   | YES   | …

| FEDERATED  | NO    |

| MyISAM   | DEFAULT |

| BLACKHOLE  | YES   |

| MRG_MYISAM | YES   |

| CSV     | YES   |

| ARCHIVE   | YES   |

| InnoDB   | NO      |

+————+———+-

8 rows in set (0.00 sec)

确实是InnoDB引擎没启用。

解决办法有二:

1、修改SQL语句中的引擎InnoDB为MyISAM,一般MyISAM都是启用的。

2、修改MySQL安装目录下的my.ini,在skip-innodb前增加#,重启MySQL,再次通过命令行查看结果为:

mysql> show engines;

+————+———+————

| Engine   | Support | Comment …

+————+———+————

| MEMORY   | YES   | …

| FEDERATED  | NO    |

| MyISAM   | DEFAULT |

| BLACKHOLE  | YES   |

| MRG_MYISAM | YES   |

| CSV     | YES   |

| ARCHIVE   | YES   |

| InnoDB   | YES     |

+————+———

根据my.ini中的提示,启用InnoDB引擎会消耗内存和硬盘空间,如非必要不建议启用。

无效时在my.ini中修改default-storage-engine=MyISAM为default-storage-engine=InnoDB,保存后再重启mysql

若无法启动,则将mysql目录下的ib开头的日志文件都删除后再重启即可.