mysql的好处触发了解决方法Innodb缺乏全文搜索

时间:2012-02-28 11:09:25

标签: mysql triggers innodb myisam

我有一张myISAM表,有250万行和上升行。我需要全文搜索,这是myisam。

对stackoverflow做了一些研究后,我正在研究再次创建表作为InnoDB表,然后在myISAM中创建一个副本。然后我将创建触发器,将innodb表中的任何更改复制到myisam表。

innodb表可以更好地运行,因为它以事务方式工作,并且在写入或更新时不会锁定整个表。

我的问题是:我是否会在myisam表中看到很多好处,因为它肯定会像以前一样经常写入,因为每次写入innodb表都会导致后续写入myisam。

感激地收到任何建议或其他想法。

布雷特

1 个答案:

答案 0 :(得分:0)

使用触发器从MyISAM复制到InnoDB时,可能会在回滚事务时创建不一致的数据。

更好的想法可能是安装像Sphinx这样可以与InnoDB表一起使用的全文搜索引擎。

另一个想法是使用事件调度程序定期将MyISAM与InnoDB同步。您冒全文本搜索会返回陈旧数据的风险,但另一方面,这应该对性能影响较小,至少您知道每次同步后数据是一致的。

还有一些好消息:从MySQL 5.6 InnoDB开始获取全文搜索。