2012-05-14 136 views
2

我是一个Ror newbe,我试图用rails创建我的第一个webapp。 当我安装了宝石mysql2我现在遇到一个问题: 这是我的实际配置:Ubuntu 12.04 - RubyOnRails - gem install mysql2似乎安装但失败时,我这样做:gem mysql2 - 未知的命令mysql2

红宝石-v:红宝石1.9.3p194(2012-04-20修订35410)x86_64的Linux的]

轨-v:Rails的3.2.3

宝石-v:1.8.24

[email protected]:~/rails/my_app$ gem install mysql2 
Building native extensions. This could take a while... 
Successfully installed mysql2-0.3.11 
1 gem installed 
Installing ri documentation for mysql2-0.3.11... 
Installing RDoc documentation for mysql2-0.3.11... 

这之后我编辑的database.yml和我运行:

耙分贝:创建

返回:

rake aborted! 
Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (mysql2 is not part of the bundle. Add it to Gemfile.) 

所以,当最后我尝试安装它,我得到的错误:

[email protected]:~/rails/my_app$ gem install activerecord-mysql2-adapter 
ERROR: Could not find a valid gem 'activerecord-mysql2-adapter' (>= 0) in any repository 
ERROR: Possible alternatives: activerecord-jdbch2-adapter, activerecord-jdbcmysql-adapter, activerecord-postgis-adapter, activerecord-jdbc-adapter, activerecord-odbc-adapter 

显然我正确安装了其他适配器,但它们不适合我需要的mysql2。

没有别的,我只是堆放在这里。 :)

+0

你运行'捆绑安装'?你的'Gemfile'包含'gem'myslq2'' – ecoologic

+0

是的,我做过。但我不知道如何检查和在哪里可以找到Gemfile 编辑:我认为gemfile显示当我运行$ bundle安装权吗?在那种情况下,没有任何mysql2 –

+0

假设你运行'bundle install',你应该在列表中看到'mysql2'。 'Gemfile'在你的项目根目录下。 – ecoologic

回答

0

尝试创建一个全新的项目,像这样

rails new -d=mysql 

这应该初始化Gemfileconfig/database.yml与可你过去你的Gemfile在你的问题正确的价值观 ?

编辑

更换gem 'sqlite3'gem 'mysql2'bundle install。那么你就需要更新config/database.yml,看看用在新项目生成的内容我在第一线

编辑

删除线插座建议,你应该罚款的东西像:

development: 
    adapter: mysql 
    database: whatever_is_there 
    username: your_username 
    password: your_pwd 
    host: localhost 
    encoding: utf8 
+0

谢谢,现在耙没有中止,但我得到一个配置错误的错误。 无法通过套接字'/var/run/mysqld/mysql.sock'连接到本地MySQL服务器(2) 当我解决这个问题时,一切都会好的。 感谢您的回答! –

27

好过从未:

1)安装RoR的

MySQL支持

在Ubuntu sudo apt-get install libmysql-ruby libmysqlclient-dev

2)创建的Rails应用

rails new mysql_app -d mysql

3)编辑config/database.yml

设置你的用户名密码& &其他细节。 主要是我写这不会忘记我自己...)

+2

谢谢,你刚刚为我节省了很多时间。 –

+9

仅供参考:我必须在Ubuntu机器上执行mysql2 gem才能安装:'sudo apt-get install libmysqlclient-dev' – Teddy