我正在连接MySQL - 8.0与MySQL工作台和得到以下错误:
无法加载认证插件“caching_sha2_password”: dlopen (/ usr /地方/ mysql / lib /插件/ caching_sha2_password。所以,2):图像 没有找到
我也尝试过其他客户端工具。
有什么解决办法吗?
我正在连接MySQL - 8.0与MySQL工作台和得到以下错误:
无法加载认证插件“caching_sha2_password”: dlopen (/ usr /地方/ mysql / lib /插件/ caching_sha2_password。所以,2):图像 没有找到
我也尝试过其他客户端工具。
有什么解决办法吗?
当前回答
几乎像上面的答案一样,但可能是在简单的查询中,我在MySQL升级后的spring引导应用程序和hibernate中得到了这个错误。通过对DB运行下面的查询,我们创建了一个新用户。我相信这是一个临时的工作,使用sha256_password而不是最新的和良好的身份验证caching_sha2_password。
CREATE USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pa$$word';
GRANT ALL PRIVILEGES ON * .* TO 'username'@'localhost';
其他回答
下面的解决方案对我很有效
进入Mysql Workbench -> Server-> Users and Privileges 1.单击“添加帐户”
2.在登录选项卡下提供新的详细信息,并确保选择认证类型作为标准,并选择各自的管理角色和模式特权
对我来说,这种情况开始发生是因为在一个项目中,我正在使用Docker映像mysql:latest(这是版本5,并且工作良好),在后来的构建中,最新版本切换到版本8,并停止工作。我把我的映像改为mysql:5,我不再得到这个错误。
如果仍然希望使用新的身份验证方法,正确的解决方案是安装mariadb-connector-c包。对于Alpine,运行:
apk add mariadb-connector-c
这将添加缺少的caching_sha2_password。库到/usr/lib/mariadb/plugin/caching_sha2_password。So。
我通过安装MySQL 5.7解决了这个问题:
步骤1 -启用MySQL存储库
首先,你需要在你的系统上启用MySQL 5.7社区发行版yum存储库。yum repository配置的rpm包可在MySQL官网获取。根据您的操作系统版本使用以下命令中的任意一个。
关于CentOS和RHEL 7
yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
关于CentOS和RHEL 6
yum localinstall https://dev.mysql.com/get/mysql57-community-release-el6-9.noarch.rpm
在Fedora 27上
dnf install https://dev.mysql.com/get/mysql57-community-release-fc27-9.noarch.rpm
在Fedora 26上
dnf install https://dev.mysql.com/get/mysql57-community-release-fc26-9.noarch.rpm
在Fedora 25上
dnf install https://dev.mysql.com/get/mysql57-community-release-fc25-9.noarch.rpm
步骤2 -安装MySQL 5.7 Server
因为你已经成功地在你的系统上启用了MySQL yum存储库。现在,根据您的操作系统版本,使用以下命令安装MySQL 5.7社区服务器。
关于CentOS和RHEL 7/6
yum install mysql-community-server
在Fedora 27/26/25
dnf install mysql-community-server
来源:https://tecadmin.net/install-mysql-5-7-centos-rhel/
当所使用的工具与MySQL8不兼容时出现此错误,请尝试更新到MySQL Workbench的最新版本