Połącz się ze SphinxQL za pomocą linuksowego wiersza poleceń

Próbuję połączyć się z SphinxQL serwerem przez Linuksa command-line w ten sposób:

> mysql -P 9306

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Mój plik konfiguracyjny Sphinx ma 2 pozycje listen:

listen                  = 9312
listen                  = 9306:mysql41

Searchd daemon działa:

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

Regularne zapytania działają idealnie:

> /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
...
Więc co robię źle? Jak Mogę uzyskać dostęp do konsoli SphinxQL?

Każda podpowiedź zostanie doceniona. Z góry dzięki!

Author: snippetsofcode, 2012-08-26

3 answers

Klient 'mysql' całkowicie zignoruje param-P, Jeśli wykryje, że mysql działa na unix-socket. Tak naprawdę, nawet jeśli pytasz o port sphinxQL, łączysz się z mysql

Użyj

mysql -P9306 --protocol=tcp

Aby powiedzieć klientowi, aby zignorował Gniazdo.

Pro Tip:

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

Który służy jako przydatne przypomnienie, że jesteś podłączony do sphinx a nie mysql :)

 63
Author: barryhunter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-26 23:25:49

Działa dla mnie:

mysql -P 9306 -h 0
 6
Author: mafin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-25 11:41:30

Wpadłem na to niedawno. Udało mi się dostać do Sphinx przez powłokę mysql, komentując konfigurację listen, która nie określiła MySQL. Może to nie zadziałać, jeśli nadal musisz przejść do searchd przez API.

 2
Author: Chris Henry,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-26 03:03:31