首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于全文索引的Mysql、InnoDB到MyISAM

问用于全文索引的Mysql、InnoDB到MyISAM
EN

Stack Overflow用户
提问于 2013-02-12 00:51:43
回答 3查看 2.6K关注 0票数 0

实际上,我想换一下我桌子的引擎。在InnoDB中有,因此我想将它们设置为MyISAM

代码语言:javascript
复制
ALTER TABLE `xxx_db`.`yyy` ADD FULLTEXT `ft_modele` (
    `anno_modele`
)

错误: Documentation #1214 -使用的表类型不支持全文索引

所以..。我这样做:

代码语言:javascript
复制
ALTER TABLE `annonce` ENGINE = MYISAM 

但我也有一个错误:

代码语言:javascript
复制
#1217 - Cannot delete or update a parent row: a foreign key constraint fails 

我明白这个错误...但是我真的不想杀死我所有的引用索引,然后重新创建它们。太久了。

有人想出了将innoDB转换为MyISAM的想法?我读到MySQL 5.6.4支持全文...不幸的是,我使用的是5.5.28版本,而我使用的是Plesk 11。我担心如果我升级了,我的服务器会崩溃。

有人能帮我吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-13 20:56:04

不幸的是,对我来说没有好的选择。虽然plesk没有升级到新版本的mysql,但我无法在不创建不稳定的情况下升级服务器。

因此,我只需mysqldump我的数据库并编辑表和键。

坦克求救。祝您今天愉快

票数 0
EN

Stack Overflow用户

发布于 2013-02-12 00:56:58

全文索引或外键约束(MyISAM不支持这些约束)只能选择一个(直到MySQL 5.6 )。

更改数据库引擎将导致整个表的重写(创建一个新的,移动数据,删除旧的)。

如果我是你,我会去升级。

票数 2
EN

Stack Overflow用户

发布于 2013-02-12 00:58:36

不幸的是,在MySQL 5.5中不能有既支持外键约束又支持全文索引的表。正如你已经注意到的,MySQL 5.6支持support fulltext indexes for InnoDB。

如果可能的话,我建议更新MySQL。MySQL 5.6是稳定的。

也可以使用外部全文索引,如Sphinx或Lucene

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

https://stackoverflow.com/questions/14816841

复制
相关文章

相似问题

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