Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Connect to SphinxQL through Linux command-line

I am trying to connect to SphinxQL server through Linux command-line this way:

> mysql -P 9306  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 

My Sphinx config file has 2 listen entries:

listen                  = 9312 listen                  = 9306:mysql41 

searchd daemon is running:

> ps ax | grep searchd 10727 ?        S      0:00 /usr/local/sphinx/bin/searchd 10728 ?        Sl     0:00 /usr/local/sphinx/bin/searchd 

Regular search queries work perfectly:

> /usr/local/sphinx/bin/search StackOverflow | 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 '/usr/local/sphinx/etc/sphinx.conf'... index 'test1': query 'StackOverflow ': returned 2 matches of 2 total in 0.009 sec  displaying matches: 1. document=1788212, weight=1797         id=1788212 ... 

So, what I am doing wrong? How can I get access to SphinxQL console?

Any hint will be appreciated. Thanks in advance!

like image 486
snippetsofcode Avatar asked Aug 26 '12 01:08

snippetsofcode


1 Answers

the 'mysql' client, will totally ignore the -P param, if it detects mysql is running on a unix-socket. So really even though you ask for the sphinxQL port, you are connecting to mysql

Use

mysql -P9306 --protocol=tcp 

to tell the client to ignore the socket.

Pro Tip:

mysql -P9306 --protocol=tcp --prompt='sphinxQL> ' 

which serves as a useful ongoing reminder you are connected to sphinx not mysql :)

like image 138
barryhunter Avatar answered Oct 02 '22 20:10

barryhunter