gpt4 book ai didi

mysql - 如何配置 PostgreSQL 或 MySQL 以使用 Sphinx 设置数据库?

转载 作者:行者123 更新时间:2023-11-29 00:53:12 24 4
gpt4 key购买 nike

我真的需要帮助来安装和启动 Sphinx。

我在 rails 3 上,我遵循这些方向:http://freelancing-god.github.com/ts/en/quickstart.html安装 sphinx 。

Thinking Sphinx 很容易安装,因为它是一个 gem。但是,该指南说我需要同时安装 Sphinx Thinking Sphinx 才能开始(这是真的吗?)。我检查了 Ryan Bates 的 railscast for Thinking Sphinx,他只安装了插件并立即开始。

无论如何,我通过 MacPorts 安装了 Sphinx,这是证明:

...
---> 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 上配置的。所以我将 gem 切换到 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。谢谢!

最佳答案

您需要将 mysqlmysql2 作为您的适配器 - 并在您的 Gemfile 中包含其中一个 gem(与适配器同名)。我推荐 mysql2,因为它得到积极维护——但请记住,如果您使用的是 Rails 3.0.x,那么您必须使用 0.2.x 版本的 mysql2。如果您使用的是 Rails 3.1,则使用 mysql2 0.3.x。

关于mysql - 如何配置 PostgreSQL 或 MySQL 以使用 Sphinx 设置数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7369416/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com