为libmysqlclient.18.dylib库创建符号链接

时间:2015-11-11 17:10:47

标签: mysql

我已经通过pkg安装程序安装了mysql。 我试图启动rails服务器,我收到以下错误。

Library not loaded: libmysqlclient.18.dylib (LoadError)

我正在阅读解决方法是创建一个像

这样的符号链接
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

没有

/usr/local/mysql/lib/libmysqlclient.18.dylib 

只提供文件

/usr/local/mysql/lib/libmysqlclient.20.dylib档案。

我跑

sudo find /usr/ -name libmysqlclient.18.dylib

我找不到libmysqlclient.18.dylib文件。

4 个答案:

答案 0 :(得分:16)

我在设置新的开发环境时遇到了类似的问题。我通过自制软件安装了MySQL,它给了我5.7.9版本的MySQL,库版本为libmysqlclient.20.dylib

就我而言,我正在建立一个python项目。需求安装失败,因为python-MySQL连接片正在寻找libmysqlclient.18.dylib,这在我的机器上找不到。

降级到MySQL 5.6为我解决了这个问题:

brew uninstall mysql
brew tap caskroom/versions
brew install mysql56

现在/usr/local/lib/libmysqlclient.18.dylib存在且一切都很好。

答案 1 :(得分:9)

最有可能在你的Rails环境中的mysql2 gem仍然在寻找libmysqlclient.18.dylib(从之前的mysql安装版本开始)但是库不再存在,因为最近的手动安装/ upgrade将其替换为libmysqlclient.20.dylib

简单的解决方法是再次安装mysql2

gem uninstall mysql2 && gem install mysql2

或更好:

gem uninstall mysql2 && bundle,如果你在Bundler。

答案 2 :(得分:3)

我没有通过brew或gem安装mysql,并且遇到了它正在寻找libmysqlclient.18.dylib而不是libmysqlclient.20.dylib的相同问题。我尝试了这里提到的所有内容以及其他一些主题。没有任何效果。最后,这对我有用:

 pip install mysqlclient

它不会安装libmysqlclient.18.dylib,但会解决library not installedimage not found错误。

希望它有所帮助!

答案 3 :(得分:0)

  1. 卸载mysqlclient
  2. 清除您的点子缓存
  3. 找到存储用于mysqlclient的pip wheel缓存的文件夹并将其删除。
  4. 重新安装mysqlclient

mac mojave OS缓存将在此文件夹中:〜/ Library / Caches / pip。请按照以下步骤操作:

  1. 查找〜/ Library / Caches / pips / wheels / | grep mysql
  2. 删除您得到的文件。
  3. pip安装mysqlclient