Mysql 如何优化全文搜索?

Mysql 如何优化全文搜索?,mysql,full-text-search,Mysql,Full Text Search,我知道在这个问题上已经有很多问题了,但我需要更具体的信息。下面是: 理想情况下,可以使用最少的资源(CPU、内存)执行全文搜索的最大字符长度应该是多少 我应该在什么时候决定使用像%$str%这样的和全文搜索 实现%$str%和全文搜索这两个版本并动态使用最佳版本是否重要 据我所知,这取决于字数,而不是字符数。mysql的数量越少,速度就越快。但不要让它妨碍你 如果可以使用全文搜索,请不要使用LIKE。除了偶尔手动运行一次的查询,您不想减慢该表上的插入速度。 你知道索引中选择速度和插入速度的折衷,

我知道在这个问题上已经有很多问题了,但我需要更具体的信息。下面是:

  • 理想情况下,可以使用最少的资源(CPU、内存)执行全文搜索的最大字符长度应该是多少
  • 我应该在什么时候决定使用像%$str%这样的
    和全文搜索
  • 实现%$str%和全文搜索这两个版本并动态使用最佳版本是否重要
  • 据我所知,这取决于字数,而不是字符数。mysql的数量越少,速度就越快。但不要让它妨碍你
  • 如果可以使用全文搜索,请不要使用LIKE。除了偶尔手动运行一次的查询,您不想减慢该表上的插入速度。 你知道索引中选择速度和插入速度的折衷,对吗
  • 在不手动运行的查询中始终使用FT(全文)搜索。LIKE的速度很慢,当行数增加时,速度会变慢。这是因为mysql引擎必须查看每一行才能回答您的查询。英国《金融时报》有一个索引,知道该去哪里查找

  • 非常感谢。:-)在第三个问题上进行一点扩展,当我搜索MySQL FT搜索中排除的关键字时,我仍然必须使用
    类似的
    ,对吗?另外,对于搜索少于3个字符的字符串的用户,您仍然可以使用FT搜索。如果要搜索每个单词,可以更改或禁用排除的单词。还有一个选项可以索引少于3个字符的单词。这些都是可配置的。看看这里:
    ft\u min\u word\u len
    ft\u stopword\u文件
    应该能帮到你。