安装sphinx后,indexer时报错:
root@localhost:~/sphinx-3.0.3/bin# ./indexer -c oc.conf oc
Sphinx 3.0.3 (commit facc3fb)
Copyright (c) 2001-2018, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
using config file 'oc.conf'...
indexing index 'oc'...
ERROR: index 'oc': sql_connect: failed to load libmysqlclient (or libmariadb) (DSN=mysql://fpopencart:***@localhost:3306/fpopencart).
total 0 docs, 0.0 Kb
total 0.0 sec, 0.0 Kb/sec, 0 docs/sec
root@localhost:~/sphinx-3.0.3/bin# ./indexer -c oc.conf oc
搜索一下,是有mysql客户端库的啊
root@localhost:~/sphinx-3.0.3/bin# find / -name 'libmysqlclient*'
/usr/lib/x86_64-linux-gnu/libmysqlclient.so.20
/usr/lib/x86_64-linux-gnu/libmysqlclient.so.20.3.9
/usr/lib/x86_64-linux-gnu/libmysqlclient
/usr/share/doc/libmysqlclient20
/var/cache/apt/archives/libmysqlclient20_5.7.22-0ubuntu0.16.04.1_amd64.deb
/var/lib/dpkg/info/libmysqlclient20:amd64.triggers
/var/lib/dpkg/info/libmysqlclient20:amd64.shlibs
/var/lib/dpkg/info/libmysqlclient20:amd64.symbols
/var/lib/dpkg/info/libmysqlclient20:amd64.list
/var/lib/dpkg/info/libmysqlclient20:amd64.md5sums
建一个软链接就好了:
ln -s /usr/lib/x86_64-linux-gnu/libmysqlclient.so.20.3.9 /usr/lib/libmysqlclient.so
root@localhost:~/sphinx-3.0.3/bin# ./searchd -c oc.conf
Sphinx 3.0.3 (commit facc3fb)
Copyright (c) 2001-2018, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
using config file 'oc.conf'...
listening on all interfaces, port=9312
listening on all interfaces, port=9306
precaching index 'oc'
precaching index 'testrt'
precached 2 indexes in 0.001 sec
WARNING: No extra index definitions found in data folder