mysql - 运行 Brew Update 后,mysql 已更新,所有带有 mysql2 的 Rails 应用程序都无法工作

标签 mysql ruby-on-rails homebrew

我已经关注这个问题有一段时间了。它发生在我运行brew升级之后。它安装了mysql版本5.7.9。

rake aborted!
LoadError: dlopen(/Users/MyName/.rvm/gems/ruby-2.2.3@AppName/extensions/x86_64-darwin-14/2.2.0-static/mysql2-0.3.20/mysql2/mysql2.bundle, 9): Library not loaded: /usr/local/opt/mysql/lib/libmysqlclient.18.dylib
  Referenced from: /Users/MyName/.rvm/gems/ruby-2.2.3@AppName/extensions/x86_64-darwin-14/2.2.0-static/mysql2-0.3.20/mysql2/mysql2.bundle
  Reason: image not found - /Users/MyName/.rvm/gems/ruby-2.2.3@AppName/extensions/x86_64-darwin-14/2.2.0-static/mysql2-0.3.20/mysql2/mysql2.bundle

但是当我 cd 进入目录时

opt/mysql/lib  master ✔                                                                                                                                                                             3h36m
▶ ls
libmysqlclient.18.dylib libmysqlclient.20.dylib libmysqlclient.a        libmysqlclient.dylib    libmysqld.a             libmysqlservices.a      pkgconfig               plugin

我尝试了该论坛上的所有符号链接(symbolic link)答案,但仍然没有成功。我正在运行 El Capitan。我也找到了,结果是这样的:

opt/mysql/lib  master ✔                                                                                                                                                                             3h36m
▶ locate libmysqlclient.18.dylib
/usr/local/Cellar/mysql/5.6.27/lib/libmysqlclient.18.dylib
/usr/local/lib/libmysqlclient.18.dylib

gem mysql2 不适用于我的任何 Rails 应用程序。每次我运行 Rails 或任何 rake 任务时,它都会自动失败。运行 Rails s 会出现此错误:

▶ rails s
bin/rails:6: warning: already initialized constant APP_PATH

非常感谢任何帮助。请并谢谢您。

最佳答案

所以我想确保其他有这个问题的人也能得到这个。 Wajid Kagzi的评论也解决了我的问题。

I fixed it by reinstalling mysql from brew, then uninstalled and reinstalled the mysql2 gem from each of my versions of ruby.

关于mysql - 运行 Brew Update 后,mysql 已更新,所有带有 mysql2 的 Rails 应用程序都无法工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33839501/

相关文章:

macos - 为什么使用 Homebrew 软件安装的可执行文件在 MacOS 上受信任?

java - 将整数数组(java)存储到MySQL数据库的好方法是什么

ruby-on-rails - rails : How do I write tests for a ruby module?

macos - 如何在 Mac OS 10.10+ 上使用 GNU sed,不再支持 'brew install --default-names'

protocol-buffers - mosh : dyld: Library not loaded:/usr/local/lib/libprotobuf. 7.dylib

ruby-on-rails - 如何用西类牙语加载我的 Rails 控制台

mysql - 用于索引表的 OR 和 IN 运算符的替代方案

php - 在 CSV 文件中保留外来字符或特殊字符

mysql - 用于合并同一行的两个查询的sql查询

ruby-on-rails - 在Elasticsearch Rails上索引时避免n + 1查询