【问题标题】:Ruby on Rails : MySQL client library issue when trying to create databaseRuby on Rails:尝试创建数据库时出现 MySQL 客户端库问题
【发布时间】:2013-10-17 06:27:13
【问题描述】:

我有一个在 Rails 3.2.8 和 Ruby 1.9.3 上运行的 Rails 应用程序。我还使用 Mysql 服务器作为数据库。

当我运行 rake db:migrate 时,我收到以下错误:

rake aborted!
Incorrect MySQL client library version! This gem was compiled for 6.0.0 but the
client library is 5.5.34.
C:/Rails SampleApps/MyAppName/config/application.rb:7:in `<top (required)>'
C:/Rails SampleApps/MyAppName/Rakefile:5:in `require'
C:/Rails SampleApps/MyAppName/Rakefile:5:in `<top (required)>'
(See full trace by running task with --trace)

我该如何解决这个问题?

任何帮助表示赞赏..

【问题讨论】:

  • 您使用的mysql2 gem 的版本是什么?
  • 我正在使用 mysql2-0.3.11-x86-mingw32 和 mysql Server 5.5 版。
  • 您是否使用 32 位 Windows 操作系统,因为 gem mysql2-0.3.11-x86-mingw32 适用于 Windows 32 位操作系统?
  • 我使用的是windows Server 2008 R2 64位,但我安装的是32位版本的Mysql Server
  • 你能不能试试我作为答案发布的两个选项,如果它不能解决你的问题,那么你应该安装 64 位版本的 MySQL 服务器,按照答案中提到的相同步骤和如果您遇到任何问题,请告诉我?

标签: mysql ruby-on-rails ruby ruby-on-rails-3


【解决方案1】:

由于您使用的是 windows,因此您有两种选择来解决这个问题:

通过编写使用2.8.1 版本的mysql gem

gem 'mysql', '2.8.1' #in your gemfile

运行

bundle install

只需使用mysql2 gem

gem 'mysql2'

并将libmysql.dll 文件放入已安装的MySQL bin 目录中,您可以从以下链接中的位置lib/libmysql.dll 中获取该目录来自

http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick

【讨论】:

    【解决方案2】:

    gem 'mysql2' ## gemfile

    rm Gemfile.lock

    捆绑安装

    rake db:drop && rake db:create

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-30
      • 1970-01-01
      • 2020-11-16
      • 1970-01-01
      • 1970-01-01
      • 2021-10-13
      • 2012-09-07
      • 1970-01-01
      相关资源
      最近更新 更多