我在mysql上有两个表:users和management。 users表具有数字id,管理表具有varchar外键,该外键是另一个表的主键。类型不一样,这似乎是我从User模型构建索引时的主要问题,并尝试从管理表中包含一列。 thinkinx sphinx生成的连接需要花费太多时间来执行,因此索引永远不会完成。 我知道最好的解决方案是更改管理表并使用数字ID,但现在看起来似乎太贵了。有没有办法让sphinx认为varchar字段实际上是一个数字id,所以可以在不改变表的情况下生成索引?
如果不清楚,请让我澄清一些看似过于模糊的内容。
谢谢!
答案 0 :(得分:0)
我确保你的外键上有一个数据库索引。
此外,如果要编辑生成的配置,可以执行此操作,然后使用以下两个选项之一处理索引,这两个选项不会自动重新生成文件:
rake ts:index INDEX_ONLY=true
rake ts:reindex # this was only added the other day