我正在开发macos 10.13.5版-实际上是最新的版本。
我通常使用laravel项目(5.6),因此我使用brew服务isntaller使本地环境正常工作。
我正在使用phpv7.1.16、mysql 8.0.11和valet。2.0.12
通过brew安装php和mysql。
在过去的3个月里,我一直在毫无问题地工作,但是我不得不重新安装操作系统的那一天终于到来了。
在用新的拷贝重新安装macos,并将每个服务安装到与以前相同的版本之后,我在尝试通过sequelpro连接mysql数据库时遇到了一些奇怪的错误。
以下是一些日志:
MySQL said: Authentication plugin 'caching_sha2_password' cannot be
loaded: dlopen(/usr/local/lib/plugin/caching_sha2_password.so, 2): image
not found
这很奇怪,因为我已经用同样的东西工作了很长一段时间没有任何问题。。。
所以我很感激你对如何处理这个问题的建议。我还想注意到,我已经阅读了关于这个问题的几乎所有内容,但是我找不到至少一个与我的配置类似的配置(大多数人在使用mysql或其他服务提供商提供的本地数据库时描述了这个问题)。
1条答案
按热度按时间4xrmg8kj1#
出现错误消息是因为mysql v8更改了默认的身份验证插件/方法,该插件/方法与旧客户端没有向后兼容性。可以通过使用传统身份验证方法来解决此错误,根用户可以通过执行以下操作来启用此方法:
安装mysql之后,使用cli进行身份验证,例如
mysql -uroot
然后运行以下命令以使用旧的身份验证方法:ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'PASSWORD';
最后,刷新特权:FLUSH PRIVILEGES;
现在您应该可以再次使用sequelpro连接(使用指定的密码)。