如何让Rails使用这个特定的MYSQL?

时间:2012-01-07 03:14:00

标签: mysql ruby-on-rails

我一直在我的本地主机上使用sqlite3制作Rails站点,但我也在两个地方安装了mysql,两者都使用MAMP并且在我的硬盘上独立安装。使用sqlite3很简单,因为你不得不做任何事情,但是,由于我想使用的宝石http://www.enkiblog.com/(它说它需要mysql或postgres),我现在必须离开简单的sqlite3世界。所以我必须做一些配置来指定我的系统上我的下一个Rails应用程序将使用哪个mysql,我将如何做到这一点?我不想使用MAMP mysql。

由于

2 个答案:

答案 0 :(得分:2)

您的应用

将您的database.yml更新为以下内容:

development:
  adapter: mysql
  encoding: utf8
  database: yourdb_development
  username: root
  password:
  socket: /tmp/mysql.sock

注意socket参数?您可以设置两个MySQL服务器以使用不同的套接字,在此指定要使用的服务器。

以类似方式添加testproduction环境的配置。

MySQL部分

您可以在MySQL的配置文件(通常名为my.cnf)中指定套接字文件的位置,如下所示:

 [mysqld]
 socket=/path/to/socket

 [client]
 socket=/path/to/socket

有关详细信息,请参阅this page。在哪里可以找到您机器上的配置文件 - 这超出了这个问题的范围。 : - )

答案 1 :(得分:0)

enki gem支持sqlite3,甚至在默认配置示例中使用它。他们只是在自述文件中提到了mysql和postgres。

IMO不支持sqlite3的宝石将是一个巨大的红旗。

https://github.com/xaviershay/enki/blob/master/config/database.example.yml