连接docker配置的mysql8.0 报错Public Key Retrieval is not allowed
时间: 2023-07-17 21:10:52 浏览: 162
当你尝试连接到 Docker 配置的 MySQL 8.0 数据库时,如果遇到 "Public Key Retrieval is not allowed" 的错误,这是因为默认情况下 MySQL 8.0 不允许使用不安全的连接。你可以尝试以下解决方法:
1. 在连接 MySQL 时,使用 `--ssl-mode` 参数指定为 `DISABLED`,这将禁用 SSL 连接。例如:
```
mysql -u root -p --ssl-mode=DISABLED
```
2. 如果你使用的是 MySQL 客户端工具,如 MySQL Workbench,可以在连接配置中设置 SSL 模式为 "Disabled"。
3. 如果你想启用 SSL 连接,可以执行以下步骤来解决此问题:
- 首先,进入到 MySQL 容器的 bash shell:
```
docker exec -it mysql-container bash
```
- 然后,进入 MySQL 控制台:
```
mysql -u root -p
```
- 在 MySQL 控制台中,运行以下命令禁用 SSL 模式:
```
SET GLOBAL require_secure_transport=OFF;
```
- 最后,退出 MySQL 控制台并重启 MySQL 容器:
```
exit
docker restart mysql-container
```
重启后,尝试连接到 MySQL 数据库,应该不再报 "Public Key Retrieval is not allowed" 错误。
请注意,禁用 SSL 连接可能会降低数据传输的安全性。如果你需要使用安全的连接,建议配置正确的 SSL 证书和密钥,并使用正确的 SSL 配置。
阅读全文