问题描述
使用 sphinxsearch 2.2,我在 sphinx.conf
中定义了这个架构:
index topic
{
type = rt
path = /var/lib/sphinxsearch/data/topic
rt_field = title
rt_field = description
rt_attr_timestamp = created_at
}
当我保存并重新安装searchd时(再次唱searchd --stop
然后searchd
)
该模式未反映在 spixQL 中:
MysqL [(none)]> desc topic;
+-------------+-----------+
| Field | Type |
+-------------+-----------+
| id | bigint |
| title | field |
| title | field |
| description | field |
| likes | uint |
| created_at | timestamp |
+-------------+-----------+
6 rows in set (0.000 sec)
如您所见,由于某种原因,上面有两个 title
字段。这不会改变我对 sphinx.conf
所做的任何更改。
为了更新架构,我还尝试删除所有 /var/lib/sphinxsearch/data/topic* 文件,但没有任何区别。
这里有什么问题?我该如何解决?
解决方法
仅仅重新定义架构是不够的,因为索引文件已经存在。
据说如果删除索引文件,在关闭searchd
时,索引会重新生成为空,下次尝试使用。