非常好的问题 👍。在 IntelliJ IDEA 中连接 MySQL 数据库时经常会出现连接失败的情况,比如提示 Communications link failurePublic Key Retrieval is not allowedAccess denied for user 等等。下面我帮你系统性梳理一下 从环境、驱动到配置 的完整排查与解决步骤。


🧭 一、常见问题分类

类型常见报错信息原因说明
🔌 网络问题Communications link failureMySQL 没启动、端口被防火墙拦截、主机不通
🔐 用户认证Access denied for user 'root'@'localhost'用户名/密码错误,或连接 host 权限不对
🔑 SSL/加密问题Public Key Retrieval is not allowed8.x 驱动默认不允许公钥检索
🧱 驱动版本不匹配No suitable driverDriver class not found未下载 MySQL 驱动或版本不兼容
⚙️ IDEA 设置问题“Driver class not found”数据源驱动未正确加载或 jar 缺失

🧩 二、逐步排查与解决

✅ Step 1:检查 MySQL 服务是否运行

# Windows
net start | find "MySQL"

# macOS / Linux
sudo systemctl status mysql

若没运行,启动它:

sudo systemctl start mysql


✅ Step 2:确认端口和地址是否正确

MySQL 默认端口是 3306
在命令行中测试:

mysql -h 127.0.0.1 -P 3306 -u root -p

如果命令行都连不上,IDEA 也一定不行。
这说明问题出在数据库配置、端口、防火墙或网络。


✅ Step 3:确认账号权限

登录 MySQL 后查看用户权限:

SELECT host, user FROM mysql.user;

确保有一条:

root | localhost

root | %

如果没有 %(代表任意主机可连),执行:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;


✅ Step 4:检查驱动版本匹配

MySQL 版本推荐驱动
5.xmysql-connector-java 5.1.49
8.xmysql-connector-java 8.0.33(或更高)

在 IDEA 连接界面点击:

DriverDownload Driver Files

自动下载正确的驱动版本。


✅ Step 5:调整 IDEA 数据源配置

Database 工具窗口 中:

  1. 点击 ➕ → Data Source → MySQL
  2. 填写信息:
    • Host: 127.0.0.1
    • Port: 3306
    • User: root
    • Password: 你的密码
  3. Driver Settings 里:
    • 如果是 MySQL 8.x,URL 里添加: ?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
    • 完整示例: jdbc:mysql://127.0.0.1:3306/testdb?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
  4. 点击 Test Connection 测试。

✅ Step 6:特殊情况处理

💡 报错:Public Key Retrieval is not allowed

👉 在 URL 添加:

allowPublicKeyRetrieval=true

💡 报错:The server time zone value 'CST' is unrecognized

👉 在 URL 添加:

serverTimezone=Asia/Shanghai

💡 报错:SSL connection error

👉 在 URL 添加:

useSSL=false


🧰 三、实用命令汇总

操作命令
查看 MySQL 端口SHOW VARIABLES LIKE 'port';
查看绑定地址SHOW VARIABLES LIKE 'bind_address';
查看所有用户SELECT user, host FROM mysql.user;
修改 root 密码ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

✅ 四、推荐最终可用配置示例

URL:
jdbc:mysql://127.0.0.1:3306/mydb?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
User: root
Password: 你的密码
Driver: com.mysql.cj.jdbc.Driver


🔍 五、若仍无法连接

请提供以下信息,我可以帮你精准定位:

  1. MySQL 版本(如 8.0.36)
  2. IDEA 版本(如 2024.2)
  3. 报错截图或完整错误信息
  4. 连接 URL