我正在设计一个使用 Mysql 作为后端的 Web 应用程序 - 并使用 INNodb 表来维护外键关系。
现在我有了这个表格视频,它有一个列标签,其中包含我需要执行搜索的关键字。现在因为这个表是 Innodb 我不能使用 Mysql 的全文搜索功能。
现在我没有将视频表更改为 MyIsam 并打破所有外键约束 - 我正在考虑创建另一个名为 video_tags 的 MyIsam 类型的表,它将包含标签列和 video_id(视频表的主键)。
所以在我的数据库中,除了 video_tags 表之外,所有表都是 Innodb。 这是处理这个问题的正确方法吗? 感谢您的建议。
最佳答案
您可能遇到的唯一问题是 MyISAM 表不支持事务。因此,如果您启动事务,将数据写入 InnoDB 和 MyISAM 表,然后回滚,对 INNODB 的更改将被回滚,但对 MyISAM 的更改不会。
你也可以考虑使用像 Sphinx 这样的东西用于搜索。
关于mysql - 在 MySql 表上进行全文搜索(Innodb 与 ISAM),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4243341/