2014-12-15 4 views
1

Я использую драгоценный камень think-sphinx с моим проектом и столкнулся с этой ошибкой. Настройка и поиск все работали в разработке, но как только я попытался настроить его в своей рабочей среде, я перехожу в ActionView::Template::Error: Lost connection to MySQL server at 'reading initial communication packet', когда вы переходите к представлению с помощью метода поиска.Мышление Sphinx и рельсы: Потерянное соединение с сервером MySQL при ошибке «чтение исходного коммуникационного пакета»

rake ts: указатель и грабли ts: начало обе произведение. Я проверил, что SearchD работает на порту 9312. для того, что это стоит я бегу
- мышление-сфинкс 3.1.2
- рельсы 3,2
- рубин 1.9.3

Мой thinking_sphinx.yml файл выглядит следующим образом это:

production: 
mysql41: 9312 
pid_file: /shared/tmp/searchd.pid 
indices_location: /shared/db/sphinx 
configuration_file: /config/production.sphinx.conf 
binlog_path: /shared/binlog 

Мой production.sphinx.conf после индекса выглядит следующим образом:

searchd 
{ 
    listen = 127.0.0.1:9312:mysql41 
    log = /shared/log/production.searchd.log 
    query_log = /shared/log/production.searchd.query.log 
    pid_file = /shared/tmp/searchd.pid 
    workers = threads 
    binlog_path = /shared/binlog 
} 

Пробовал несколько решений, которые я нашел онлайн, но еще не удалось обойти эту ошибку. Любая помощь или понимание будут очень признательны!

+0

Можете вы подтвердить, какую версию Thinking Sphinx вы используете? Thinking Sphinx v3.x использует протокол MySQL для подключения к Sphinx, но v2.x этого не делает, поэтому эта ошибка не имеет смысла, если вы используете v2.0.12. – pat

+0

Также: существует ли процесс поиска на вашей производственной машине? Для данного файла конфигурации должно быть не менее двух (мастер-процесс, а затем один рабочий на рубиновый процесс, использующий Sphinx). – pat

+0

Привет, жаль, спасибо за ответ. Извините, я читал версию TS с неправильного места, это 3.1.2. Что касается вашего второго вопроса, когда я делаю ps aux на сервере, я не вижу никаких процессов поиска, но порт 9312 прослушивает searchd. – Ultimation

ответ

0

Запуск команды:

bundle exec rake ts:rebuild 

работал для меня.

Смежные вопросы

 Смежные вопросы