更新:它现在正在运作。
解决方案:我关闭了sphinxsearch服务,删除了我的索引文件,重建了索引,启动了服务,现在我收到了结果。
我一直想弄清楚为什么我无法搜索并从Sphinx获得结果。
我已完成索引(已成功)
total 16261878 docs, 26084076839 bytes
total 3661.072 sec, 7124709 bytes/sec, 4441.83 docs/sec
total 131 reads, 53.673 sec, 106140.4 kb/call avg, 409.7 msec/call avg
total 25714 writes, 43.170 sec, 1231.8 kb/call avg, 1.6 msec/call avg
但是当我尝试执行搜索 select * from skoovy_prd_post search where match('five guys') limit 10
mysql -P 9306 -h127.0.0.1
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.7
MySQL [(none)]> select * from skoovy_prd_post_search where match('five guys') limit 10;
我收到:
Empty set (0.00 sec)
但是对'五个人'进行一次击球,我肯定有结果:
indextool --dumphitlist skoovy_prd_post_search 'five guys' |more
Sphinx 2.0.4-release (r3135)
Copyright (c) 2001-2012, Andrew Aksyonoff
Copyright (c) 2008-2012, Sphinx Technologies Inc (http://sphinxsearch.com)
using config file '/etc/sphinxsearch/sphinx.conf'...
dumping hitlist for index 'skoovy_prd_post_search' keyword 'five guys'...
keyword=five guys, tok=five, wordid=1018350795
doc=3327, hit=0x01000001
doc=3327, hit=0x03000004
doc=3327, hit=0x23000006
doc=3327, hit=0x23000011
doc=3327, hit=0x24000006
doc=3327, hit=0x24000010
doc=3327, hit=0x25000006
doc=3327, hit=0x25000011
doc=3327, hit=0x26000006
doc=3327, hit=0x26000010
doc=43112, hit=0x01000001
doc=43112, hit=0x03000004
doc=43112, hit=0x23000006
doc=43112, hit=0x23000011
任何人都有任何想法,建议或知道为什么会这样?
答案 0 :(得分:1)
indextool --dumphitlist转储仅针对一个关键字的匹配,即第一个,即使您传递多个关键字。请注意,默认情况下,搜索是连接的(隐式AND)。
答案 1 :(得分:0)
我关闭了sphinxsearch服务,删除了我的索引文件,重建了索引,启动了服务,现在我收到了结果。
我确实看到其他人在他们遇到过的各种其他问题上做了这些,所以我想将其添加到列表中。