提问人:Jason Song 提问时间:11/16/2023 更新时间:11/16/2023 访问量:21
Innodb Mysql) 全文索引在某个时间点后停止索引
Innodb Mysql) Fulltext Index has stopped indexing after a certain point in time
问:
我目前正在维护一个实时看板服务,包含所有帖子和回复的最大表有三个用不同列定义的全文索引。
搜索是在 ngram 和 BOOLEAN 模式下完成的。使用 MATCH 搜索...在过去的几年里,AGAINST 一直完美无缺,直到今年 9 月。
在特定日期之后,它将不再索引数据。小问题是最近插入的行(< 10 分钟前)实际上确实出现了然后消失了。
我相信有两个表存储了全文索引的数据,它们是
- INNODB_FT_INDEX_TABLE
- INNODB_FT_INDEX_CACHE
新行被放入 CACHE 中,并定期自动刷新到 TABLE 中。搜索适用于最近的行,可能是因为它尚未刷新到 TABLE 中。(直接查询 TABLE 会中断我的连接,并将 CPU 使用率飙升至 99%)
所以我的预感是,自 9 月的某个时候以来,冲洗过程已经停止工作。问题是我不知道刷新过程的任何日志存储在哪里,也不知道如何在我的实时服务上不造成严重停机的情况下重建索引。
全文索引是否具有最大大小,或者它们有时是否出错并需要手动处理?
系统信息) AWS RDS Aurora DB 5.7 Mysql
为了查看全文索引的状态,我首先设置了 innodb_ft_aux_table=“DATABASE_NAME/TABLE_NAME”,然后查询所有与全文相关的表以获取提示。(参考:https://dev.mysql.com/doc/refman/8.0/en/innodb-information-schema-fulltext_index-tables.html)
CACHE表工作正常,但我无法直接查询TABLE表。即使我能够直接查询行,我也怀疑它会告诉我任何有用的东西。
答: 暂无答案
评论