【问题标题】:rake db:create giving errorrake db:create 给出错误
【发布时间】:2026-01-31 11:20:09
【问题描述】:

当我运行 rake db:create 时出现以下错误

xyz-MacBook-Pro:ruby_project xyz$ rake db:create
rake aborted!
dlopen(/Users/xyz/.rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.18.dylib
Referenced from: /Users/xyz/.rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle
Reason: image not found - /Users/xyz/.rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle

我的系统中安装了 mysql 5.1.66,并且我的 database.yml 文件结构是

adapter: mysql2
encoding: utf8
reconnect: false
database: ruby_test
pool: 5
username: root
password:
host: /tmp/mysql.sock

以下是我系统中mysql文件夹的内容

libdbug.a           libmysqlclient_r.a
libheap.a           libmysqlclient_r.dylib
libmygcc.a          libmysqlclient_r.la
libmyisam.a         libmysqld.a
libmyisammrg.a          libmystrings.a
libmysqlclient.16.dylib libmysys.a
libmysqlclient.a        libvio.a
libmysqlclient.dylib    libz.a
libmysqlclient.la       libz.la
libmysqlclient_r.16.dylib   plugin

有人可以帮我解决这个问题吗?

【问题讨论】:

  • 同样的问题在*.com/questions/10557507/…得到了满意的答复
  • 它有 libymysqlclient18.dylib 但它无法找到。就我而言,我没有 libmysql18.dylib 文件。

标签: mysql ruby-on-rails ruby macos rake


【解决方案1】:

使用命令为 mysql2 安装 gem
宝石安装 mysql2
检查捆绑包以确保它使用 mysql 作为默认数据库。 并将 libmysql.dll 文件放在你的 MySQL bin 文件夹中。

【讨论】:

    【解决方案2】:

    你可以安装 libmysqlclient。我猜你正在使用 Ubuntu,然后使用以下安装

    sudo apt-get install libmysql-ruby libmysqlclient-dev
    

    【讨论】:

      【解决方案3】:

      一种简单且最好的方法是通过命令创建软链接-

      sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
      

      http://rorguide.blogspot.com/2011/07/getting-error-library-not-loaded.html

      【讨论】:

      • 我的 mysql/lib 文件夹中没有 libmysqlclient.18.dylib。我已经提到...
      最近更新 更多