我已经通过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文件。
在设置新的开发环境时遇到了类似的问题。我通过自制软件安装了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
存在,一切都很好。
最有可能在你的Rails环境中的mysql2
gem仍然在寻找libmysqlclient.18.dylib
(从以前的mysql安装开始)但是库不再存在,因为最近的手动安装/升级用libmysqlclient.20.dylib
取而代之。
简单的解决方法是再次安装mysql2
:
gem uninstall mysql2 && gem install mysql2
或者更好的是:
gem uninstall mysql2 && bundle
,如果你在Bundler。
我没有通过brew或gem安装mysql,并且面临同样的问题,它正在寻找libmysqlclient.18.dylib
而不是libmysqlclient.20.dylib
。我尝试了这里提到的所有内容以及其他一些主题。没有任何效果。最后,这对我有用:
pip install mysqlclient
它没有安装libmysqlclient.18.dylib
,但解决了library not installed
和image not found
错误。
希望它可以帮到某人!
mac mojave OS缓存将在此文件夹中:〜/ Library / Caches / pip。请按照以下步骤操作: