数据库版本 Mysql5.6.21
表体量100万+条
目前有一个text类型字段,用like操作查询比较多。导致查询速度过慢。
开始的设想是给该字段加一个fulltext索引,加了之后对英文的查询速度的确变快了。不过由于分词的原因,对中文的支持不好。百度后发现要使用一个ngram插件来支持中文。但是5.6不支持该插件。
想问下,在不升级数据库的前提下,还有其他的优化方案吗?
数据库版本 Mysql5.6.21
表体量100万+条
目前有一个text类型字段,用like操作查询比较多。导致查询速度过慢。
开始的设想是给该字段加一个fulltext索引,加了之后对英文的查询速度的确变快了。不过由于分词的原因,对中文的支持不好。百度后发现要使用一个ngram插件来支持中文。但是5.6不支持该插件。
想问下,在不升级数据库的前提下,还有其他的优化方案吗?
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
5 回答1.4k 阅读
3 回答1.2k 阅读✓ 已解决
2 回答2k 阅读
3 回答2k 阅读
这种情况下建议增加一个单独的缓存数据库(如Redis)
将部分热搜缓存至Redis内
PHP代码可参考下面