实际上,我想切换表格的引擎。在InnoDB中,我想将它们设置为MyISAM,因为这个
ALTER TABLE `xxx_db`.`yyy` ADD FULLTEXT `ft_modele` (
`anno_modele`
)
错误: 文档 #1214 - 使用的表类型不支持FULLTEXT索引
所以...我这样做:
ALTER TABLE `annonce` ENGINE = MYISAM
但我也有错误:
#1217 - Cannot delete or update a parent row: a foreign key constraint fails
我理解错误......但我真的不想杀死所有引用索引,并重新创建它们。太久了。
有人有想法将innoDB转换为MyISAM吗?我读到MySQL 5.6.4支持全文...不幸的是我有5.5.28而且我在Plesk 11.我担心如果我升级,我的服务器崩溃了。
有人可以帮助我吗?
答案 0 :(得分:2)
全文索引或外键约束(MyISAM不支持那些)你只能选择一个(直到MySQL 5.6)。
无论如何,更改数据库引擎将导致总表重写(创建新表,移动数据,丢弃旧表)。
如果我是你,我会去升级。
答案 1 :(得分:2)
不幸的是,你不能在MySQL 5.5中拥有一个支持外键约束和全文索引的表。正如您已经注意到的,MySQL 5.6具有support fulltext indexes for InnoDB。
如果可能,我建议更新MySQL。 MySQL 5.6很稳定。
答案 2 :(得分:0)
不幸的是,对我来说没有好的选择。虽然没有使用新版本的mysql升级plesk,但我无法升级服务器而不会造成不稳定。
所以,我只是mysqldump我的数据库并编辑表和键。
坦克的帮助。祝你有愉快的一天