6.1.2.2. Sphinx配置
Sphinx配置文件数据可以通过ACP生成,然后复制粘贴到Sphinx中,也可以手动编辑和使用Sphinx.conf示例配置。需要在sphinx.conf中创建和定义以下文件夹/文件:
- 配置目录,其中将有sphinx.conf和stopwords.txt(如果已定义)。
- 数据目录,其中将包含二进制文件和索引文件。
- 日志目录作为数据目录的子目录,将保存与Sphinx搜索服务器相关的所有日志。
- 数据目录
mkdir -p {DATA_PATH} - 日志目录
mkdir -p {DATA_PATH}/log
- 主要索引
indexer --config {CONFIG_PATH}/sphinx.conf index_phpbb_{SPHINX_ID}_main >> {DATA_PATH}/log/indexer.log 2>&1 & - 指数增量
indexer --config {CONFIG_PATH}/sphinx.conf index_phpbb_{SPHINX_ID}_delta >> {DATA_PATH}/log/indexer.log 2>&1 & - 重新索引
indexer --rotate --config {CONFIG_PATH}/sphinx.conf index_phpbb_{SPHINX_ID}_delta >> {DATA_PATH}/log/indexer.log 2>&1 &
测试Sphinx是否正常工作。以下命令将返回搜索结果。
search --config {CONFIG_PATH}/sphinx.conf search string
6.1.2.6. 增量更新
大多数Unix系统上的Crontab文件可以通过以下方式进行编辑
crontab -e
添加此行以每五分钟更新一次增量索引
*/5 * * * * indexer --rotate --config {CONFIG_PATH}/sphinx.conf index_phpbb_{SPHINX_ID}_delta >> {DATA_PATH}/log/indexer.log 2>&1 &
添加此行以每晚为完整索引设置一次定时作业
0 3 * * * indexer --rotate --config {CONFIG_PATH}/sphinx.conf index_phpbb_{SPHINX_ID}_main >> {DATA_PATH}/log/indexer.log 2>&1 &
6.1.2.7. 开始搜索
启动sphinx守护进程。
searchd --config {CONFIG_PATH}/sphinx.conf >> {DATA_PATH}/log/searchd-startup.log 2>&1 &
6.1.2.8. 故障排除
可以检查目录中存在的日志文件是否有错误。 看{DATA_PATH}/log/Sphinx文档了解详情。