Ubuntu 12.04 - RubyOnRails - gem install mysql2似乎安装但是当我这样做时失败:gem mysql2 - 未知命令mysql2

时间:2012-05-14 09:31:33

标签: ruby-on-rails ubuntu gem mysql2

我是Ror newbe,我正在尝试使用rails创建我的第一个webapp。 我在安装gem mysql2时遇到问题: 这是我的实际配置:

ruby​​ -v:ruby 1.9.3p194(2012-04-20修订版35410)[x86_64-linux]

rails -v:Rails 3.2.3

gem -v:1.8.24

michele@michele:~/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 db:create

它返回:

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

所以,当我最终尝试安装它时,我收到错误:

michele@michele:~/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。

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

2 个答案:

答案 0 :(得分:27)

迟到总比没有好:

1)安装对RoR的mysql支持

on ubuntu sudo apt-get install libmysql-ruby libmysqlclient-dev

2)创建rails app

rails new mysql_app -d mysql

3)编辑config/database.yml

设置您的用户名和密码以及其他详细信息。 主要是我写这封不要忘记自己......)

答案 1 :(得分: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