简体   繁体   English

将InnoDB表转换为MyISAM最安全的方法是什么?

[英]What's the safest way to convert table with InnoDB to MyISAM?

My database is currently using the InnoDB engine. 我的数据库目前正在使用InnoDB引擎。 Now I want to add the fulltext search feature, which is why I want to convert my tables to MyISAM. 现在我想添加全文搜索功能,这就是我想将表格转换为MyISAM的原因。 But doing so breaks all foreign keys. 但这样做会破坏所有外键。 How can I change my table engines to MyISAM safely? 如何安全地将我的表引擎更改为MyISAM?

How can I use SELECT...JOIN after I change my tables to the MyISAM engine? 将表格更改为MyISAM引擎后,如何使用SELECT ... JOIN?

ALTER TABLE jobs ENGINE = MyISAM;
Cannot delete or update a parent row: a foreign key constraint fails

我建议你转储数据库,将该文件中的所有文本从InnoDB更改为MyISAM,然后加载修改后的文件

As I know, MyISAM doesn't supports foreign keys (compare the features offered by InnoDB vs the features of MyISAM ). 据我所知,MyISAM不支持外键(比较InnoDB提供的功能与MyISAM的功能)。 MySQL tries to tell you that you have to drop every foreign key constraint that references your jobs table before changing its engine to MyISAM. MySQL试图告诉您,在将其引擎更改为MyISAM之前,必须删除引用jobs表的每个外键约束。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM