2013-02-15 1 views
1

Раньше у меня с мышью-сфинкс работало с mySQL. Теперь я перехожу на PostgreSQL. Тем не менее, мое мышление-сфинкс все еще настроен на MySql, поэтому получил следующее сообщение об ошибке:Ошибка при запуске ThinkingSphinx с PostgreSQL

/Users/name/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.2.0/lib/active_support/dependencies.rb:251:in `require': no such file to load -- mysql2 (LoadError) 

я трассировать назад thinking_sphinx.rb файл в Users/name/.rvm/gems/thinking-sphinx-3.0.1/lib и нашел следующее:

if RUBY_PLATFORM == 'java' 
    require 'java' 
    require 'jdbc/mysql' 
else 
    require 'mysql2' 
end 

Как заставить thinking-sphinx принять pgsql? В качестве альтернативы, нужно ли полностью удалить thinking-sphinx и Sphinx и установить их с конфигурацией для pgsql?

ответ

1

От https://github.com/pat/thinking-sphinx/issues/413#issuecomment-11912232

Thinking Sphinx v3 communicates with Sphinx using SphinxQL - which essentially means Sphinx behaves like a MySQL server. Hence, the mysql2 gem is required for sending queries to Sphinx.

Так что добавьте это к вам Gemfile

gem 'mysql2' 
+0

Вы также можете заблокировать раньше Thinking Sphinx 3.0.1 при установке всего этой MySQL материала является болью в заднице: 'gem 'thinking-sphinx', '2.0.10'' –