我得到的问题和这个问题完全一样。问题是,在我的情况下,解决方案并不是很容易理解。
mysql说:无法加载身份验证插件“caching\u sha2\u password”:dlopen(/usr/local/mysql/lib/plugin/caching\u sha2\u password.so,2):找不到图像
我没有任何东西初始化数据库在macs系统的首选项。第二个答案是:
转到my.cnf文件并在[mysqld]部分添加行: default-authentication-plugin=mysql_native_password
从终端登录mysql服务器: run mysql -u root -p
,然后在shell内部执行以下命令: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[password]';
退出mysql shell并运行sudo服务mysqld restart
关于在哪里可以找到my.cnf的信息可以在这个帖子中找到,并且声明: mysql --help
```
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
The following groups are read: mysql client
The following options may be given as the first argument:
--print-defaults Print the program argument list and exit.
--no-defaults Don't read default options from any option file.
--defaults-file=# Only read default options from the given file #.
--defaults-extra-file=# Read this file after the global files are read.
看起来有三个区域是my.cnf文件所在的,我不知道该编辑哪个区域,也不知道该如何编辑它。
我发现的另一个解决方案是通过以下线程:
安装mysql之后,使用cli进行身份验证,例如 `mysql -uroot` 然后运行以下命令以使用旧的身份验证方法: `ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'PASSWORD';` 最后,刷新特权: `FLUSH PRIVILEGES;` 现在您应该可以再次使用sequelpro连接(使用指定的密码)。
据报道,第二种解决方案会导致sequel pro在回答评论中被多个用户崩溃,所以我猜这是黑客攻击。
如何将mysql 8.0.12版连接到sequel pro?我应该使用另一个gui吗?这个问题似乎也发生在workbench上
万一有人问我用的是mac osx sierra 10.13.5
1条答案
按热度按时间kb5ga3dv1#
下面是我在安装了brew MySQL8的macos mojave(10.14.3)上所做的工作。
1) 将此行添加到位于/usr/local/etc的my.cnf
2) 以root用户身份在命令行上连接到正在运行的mysql服务器,然后输入:
将“password”替换为mysql服务器的根密码。
3) 为了确保所有的更改都被mysql服务器接收到,我重新启动了服务器。
这些说明摘自mysql.com文档,您可以在这里找到:
https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html#upgrade-caching-sha2-password-compatible-connectors连接器