【问题标题】:RuntimeError with mysql2 and rails3 (bundler)mysql2 和 rails3 的 RuntimeError(捆绑程序)
【发布时间】:2011-03-28 21:06:23
【问题描述】:

我收到此错误

`establish_connection': Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (no such file to load -- active_record/connection_adapters/mysql2_adapter) (RuntimeError)
  from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activerecord-

Here 是整个错误以及我的配置和 gemfile 的转储。

【问题讨论】:

标签: mysql ruby-on-rails bundler


【解决方案1】:

您是否在 gemfile 中包含 mysql2 gem 而不是旧的 mysql gem,然后运行 ​​bundle install ?

【讨论】:

【解决方案2】:

这也解决了我遇到的问题:

Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (no such file to load -- active_record/connection_adapters/mysql2_adapter)

您实际上需要运行:gem install mysql2 并将 gem 添加到您的配置中。

【讨论】:

  • 我在手动安装 mysql2 gem 时遇到了这个问题。然后我按照您在 gemfile 中所说的那样使用它并运行捆绑安装。它加载了,但我得到了无法连接到 mysql.sock 错误。所以我然后跑了 env ARCHFLAGS="-arch i386" gem install mysql2 --version 0.2.6 -- --with-mysql-config=/usr/local/mysql/bin/mysql_config (我在mac pro上)和这似乎解决了我的问题。 Ran rails s 和 hey presto ..希望这对其他人有所帮助:)
  • @dryprogrammers - 我可以给你 100+,请把你的评论作为答案,它也与 Ubuntu 12-10 非常相关。在完全更新的 Ubuntu 12.10 Precise 上无法安装。撞。经过数小时 (6-8) 的搜索和尝试许多事情后,我尝试了你的 mac hack 作为最后的手段。瞧,我(咳嗽)根本不关心 Mac……这对我来说是这样的,现在我可以上床睡觉了……快乐! :)
【解决方案3】:

还需要在 database.yml 中将适配器从 mysql 更改为 mysql2,如此处所述 Install mysql2 gem on Snow Leopard for Rails 3 with rvm

发件人:

development: adapter: mysql

收件人:

development: adapter: mysql2

【讨论】:

    【解决方案4】:

    只需运行“gem install mysql” 还在 gemfile 中添加相同的内容并运行 bundle。 工作过

    【讨论】:

    • 这让我明白了。我运行了“sudo gem install mysql2”,它成功了。谢谢!
    • 不推荐在 Gemfile 之外手动管理 gem。对于其他开发人员或部署来说,它很容易出现依赖问题。
    【解决方案5】:

    如果有人在 Windows 上使用 rails 3 安装 mysql2 gem 仍然遇到问题,请参阅安装的详细步骤 -

    http://rorguide.blogspot.com/2011/03/installing-mysql2-gem-on-ruby-192-and.html

    【讨论】:

      【解决方案6】:

      我在使用 rails 3.0.7 和 mysql2 0.3.2 时遇到了同样的错误。 我找到的解决方案here, 是使用旧版本的mysql2。因此将您的 gemfile 编辑为

      gem 'mysql2', '< 0.3'
      

      然后运行

      bundle install 
      

      【讨论】:

      • 这个在 Ubuntu 10.04 上为我修复了!!如果使用 RVM,您也可以使用:rvm gem install mysql2 --version=0.2.7,并将上述行添加到您的 Gemfile。
      • 我今天遇到了同样的问题,升级到 3.1 又降到 3.0.7。这就是修复。
      • 除了那些版本的 mysql2 在大型站点中存在阻塞问题
      • 这里相同 - 显然 mysql2 > 3.0 不会立即加载 AR 适配器
      • 更多启发,请参阅github上的以下mysql2问题,其中说mysql 0.3.x只能用于rails 3.1及更高版本:github.com/brianmario/mysql2/issues/155
      【解决方案7】:

      我是 ruby​​、rails 和 linux 的初学者。所以如果这个解决方案不起作用,我不承担任何责任:)

      第 1 步:

      sudo gem uninstall mysql2
      

      第 2 步:

      sudo gem install mysql -v 0.2.7
      

      启动webrick,如果仍然出现同样的问题,重新安装rails。

      这个解决方案对我有用。

      【讨论】:

      【解决方案8】:

      对我来说也是同样的问题。升级到 Rails 3.1.rc4 然后降级到 3.0.3。为我工作。

      【讨论】:

        【解决方案9】:

        如果您使用的是 rvm,并且可能在 rvm 之外添加了 mysql2,请尝试以下步骤: 确认您的 Gemfile 说:

        gem 'mysql2'
        

        或者对于 Rails2.x:

        gem 'mysql2', '~> 0.2.11'
        

        然后:

        $ cd RAILS_ROOT
        $ gem uninstall mysql2
        
        Select gem to uninstall:
         1. mysql2-0.2.11
         2. mysql2-0.3.6
         3. All versions
        > 3 # select "All versions"
        $ rvm gemset install mysql2
        $ bundle install
        

        现在 rails 应该可以正常启动了。

        【讨论】:

          【解决方案10】:

          截至 0.3.0 和 ActiveRecord 3.1 - ActiveRecord 适配器已 从这个 gem 中取出并进入 ActiveRecord 本身。如果你需要 使用 mysql2 和 Rails 版本 0.2.7"

          丢失的文件(no such file to load)可以在 mysql2 0.3.0 之前的版本中找到。

          引自documentation of mysql2

          【讨论】:

            【解决方案11】:

            从 Ubuntu 11.10 升级到 12.04 后,我遇到了同样的错误。这就是我解决问题的方法:

            gem uninstall mysql2
            bundle
            

            我认为这里的关键是“本机扩展”——我想我上次安装时使用的是不同版本的 mysql。

            Installing mysql2 (0.3.11) with native extensions
            

            【讨论】:

              猜你喜欢
              • 2011-11-09
              • 2011-01-27
              • 2018-12-02
              • 1970-01-01
              • 1970-01-01
              • 2015-01-20
              • 1970-01-01
              • 2011-05-03
              • 1970-01-01
              相关资源
              最近更新 更多