Мне действительно нужна помощь в установке Sphinx и его запуске.
Я использую Rails 3 и следую следующим инструкциям: http://freelancing-god.github.com/ts/en/quickstart.html для установки Sphinx.
Thinking Sphinx было легко установить, так как это жемчужина. Однако в руководстве говорится, что для начала работы мне необходимо установить Sphinx и Thinking Sphinx (правда ли это?). Я проверил railscast Райана Бейтса для Thinking Sphinx, и он только установил плагин и сразу же приступил к работе.
В любом случае, я установил Sphinx через MacPorts, и вот доказательство:
...
---> Configuring mysql5
---> Building mysql5
---> Staging mysql5 into destroot
---> Installing mysql5 @5.1.57_0
The MySQL client has been installed.
...
---> Installing sphinx @0.9.9_0+mysql5
---> Activating sphinx @0.9.9_0+mysql5
---> Cleaning sphinx
Он автоматически настроил Sphinx с mysql5. У меня есть и mySQL, и POSTgreSQL.
Теперь следующим шагом было rake thinking_sphinx:index
после настройки индекса в моей пользовательской модели, который выглядит следующим образом:
define_index do
indexes year
indexes major
indexes books_buy
indexes books_sell
indexes facebook
indexes restaurants
indexes interests
end
Однако rake thinking_sphinx:index
дал мне это:
rake aborted!
Don't know how to build task 'thinking_sphnix:index'
а потом
rake aborted!
no such file to load -- sqlite3
Итак, я решил, что моя база данных все еще настроена на sqlite3. Поэтому я переключил гем на mySQL и отредактировал файл database.yml, чтобы он выглядел следующим образом:
# Switched over to mysql
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
development:
adapter: mysql5
encoding: utf8
database: sphinx_development
pool: 5
username: root
password:
socket: /tmp/mysql.sock
test:
adapter: mysql5
encoding: utf8
database: sphinx_test
pool: 5
username: root
password:
socket: /tmp/mysql.sock
production:
adapter: mysql5
encoding: utf8
database: sphinx_production
pool: 5
username: root
password:
socket: /tmp/mysql.sock
и я получил эти ошибки:
rake aborted!
Please install the mysql5 adapter: `gem install activerecord-mysql5-adapter` (no such file to load -- active_record/connection_adapters/mysql5_adapter)
и
ERROR: Could not find a valid gem 'activerecord-mysql5-adapter' (>= 0) in any repository
ERROR: Possible alternatives: activerecord-jdbcmysql-adapter, activerecord-nulldb-adapter, activerecord-odbc-adapter, activerecord-jdbc-adapter, activerecord-postgis-adapter
Tony-Ngs-MacBook-Air:sample_app TonyNg$ gem install activerecord-nulldb-adapter
Любые советы будут щедрыми и полезными. Также был бы готов переключиться на PostgreSQL, если бы была предоставлена помощь. Спасибо!
gem install activerecord-mysql5-adapter
- person Brad Mace   schedule 10.09.2011ERROR: Could not find a valid gem 'activerecord-mysql5-adapter' (>= 0) in any repository ERROR: Possible alternatives: activerecord-jdbcmysql-adapter, activerecord-nulldb-adapter, activerecord-odbc-adapter, activerecord-jdbc-adapter, activerecord-postgis-adapter
- person Tony   schedule 10.09.2011