DBevaer 连接mysql 报错 Public Key Retrieval is not allowed
时间: 2023-11-08 11:03:31 浏览: 86
出现 "Public Key Retrieval is not allowed" 的错误通常是由于 MySQL 8.0 使用了 caching_sha2_password 认证插件,而旧版本的 MySQL 客户端(如 DBeaver)不支持该插件所导致的。可以通过在 MySQL 中更改用户的认证插件或者在 DBeaver 中使用新版的 MySQL 驱动解决此问题。
解决此问题的方法有两种:
1. 更改 MySQL 用户的认证插件为 mysql_native_password:可以使用以下 SQL 语句更改用户的认证插件:
ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
其中,'username' 和 'password' 分别为要更改的用户名和密码。
2. 在 DBeaver 中使用新版的 MySQL 驱动:可以在 DBeaver 的官网上下载新版的 MySQL 驱动,并将其配置到 DBeaver 中使用。
相关问题
连接mysql报错 Public Key Retrieval is not allowed
"Public Key Retrieval is not allowed" 这个错误通常在连接MySQL时出现,它是由于密码传输过程中必须使用TLS协议保护,但客户端无法获取服务器的公钥所致。为了解决这个问题,你可以通过以下两种方法之一来解决:
1. 在连接中指定服务器的RSA公钥:
在连接MySQL时,通过在连接字符串中设置ServerRSAPublicKeyFile参数,指定服务器的RSA公钥文件路径。这样客户端就能正确获取到服务器的公钥,从而解决问题。
2. 允许客户端从服务器获取公钥:
在连接MySQL时,可以设置AllowPublicKeyRetrieval=True参数,允许客户端从服务器获取公钥。这样客户端就能正确获取到服务器的公钥,从而解决问题。
请根据你的具体情况选择其中一种方法来解决问题。如果你无法确定服务器的RSA公钥文件路径,或者无法修改连接字符串,你可以尝试联系MySQL管理员或技术支持人员寻求帮助。
mysql报错Public Key Retrieval is not allowed
mysql报错"Public Key Retrieval is not allowed"是因为在连接mysql时,设置了参数"skip-ssl",导致不允许进行公钥检索。这个错误通常发生在使用旧版本的mysql驱动程序或连接器时,因为旧版本对于加密要求较低,不支持公钥检索。
要解决这个问题,你可以尝试以下几种方法:
1. 升级mysql驱动程序或连接器版本:如果你正在使用旧版本的mysql驱动程序或连接器,可以尝试升级到最新版本,以支持公钥检索。
2. 启用公钥检索:如果你确定需要进行公钥检索,你可以在连接mysql时删除"skip-ssl"参数,或者将其设置为"false",以启用公钥检索。
3. 检查mysql配置文件:检查mysql配置文件中是否有相关的配置,例如"skip-ssl"参数或其他与SSL相关的参数,确保其设置正确。
阅读全文