首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缺少InnoDb引擎

缺少InnoDb引擎
EN

Stack Overflow用户
提问于 2009-12-06 05:05:46
回答 4查看 3.9K关注 0票数 2

我刚刚查看了我网站的一个数据库,注意到所有的表都被转换成了MyISAM (它们曾经是InnoDB)。

更重要的是,InnoDB似乎与BerkeleyDB、Federated等一起缺失了。

几个月前,我从MySql 5.0升级到5.1.38。我无法想象,如果在升级后没有安装InnoDB,我不会注意到这一点,但也许升级后就是这样了。在我看来,让几个10 GB的表自动转换为MyISAM而不知道任何停机时间似乎是不太可能的。

无论如何,mysql系统变量have_innodb都设置为NO。我是否可以简单地将其更改为YES,或者这是否意味着安装中缺少InnoDB?

EN

回答 4

Stack Overflow用户

发布于 2011-05-25 20:57:49

可能InnoDB参数在升级过程中发生了更改?来自MySQL论坛的这个建议帮助我遇到了类似的情况:http://forums.mysql.com/read.php?22,397052,408970

简而言之:停止MySQL守护进程,从datadir中删除ib_logfile*,重新启动MySQL。

票数 2
EN

Stack Overflow用户

发布于 2009-12-06 06:13:48

如果SHOW ENGINES中的字段为"no“,则表示它没有编译进来。您必须重新编译服务器,编译innodb plugin并加载它,或者获取启用了它的服务器二进制文件。

票数 1
EN

Stack Overflow用户

发布于 2009-12-06 19:55:42

您不能简单地将mysql系统变量设置为YES来将表从MyISAM转换为InnoDB。

代码语言:javascript
复制
ALTER TABLE t1 ENGINE=InnoDB;

当关闭InnoDB支持时,即使您在create table语句中使用ENGINE=InnoDB,该表也将使用MySQL的默认存储引擎,该引擎通常为MyISAM。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1853474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档