You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下控制台可正常使用MySQL但IntelliJ IDEA Ultimate连接报错1045怎么办

故障根因

你遇到的报错是因为Linux环境下MySQL默认对root@localhost用户采用auth_socket插件做身份验证,而非密码验证。该验证规则只允许拥有操作系统root权限的进程登录root账户,你控制台加sudo就是临时获取系统root权限所以可以登录,而IDEA是普通用户权限启动,哪怕密码输入正确也会被拒绝。

解决方案

推荐优先选择方案二,不会修改root用户的默认安全规则,更符合生产/开发环境的安全规范。

方案1:修改root用户验证方式为密码验证

  • 第一步:控制台执行命令登录MySQL:sudo mysql -u root
  • 第二步:切换到MySQL系统库:use mysql;
  • 第三步:执行命令修改验证规则,将你的自定义密码替换为你要设置的MySQL root密码:
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的自定义密码';
  • 第四步:刷新权限使配置生效:FLUSH PRIVILEGES;
  • 第五步:退出MySQL控制台,执行mysql -u root -p输入刚才设置的密码测试无sudo登录,成功后即可在IDEA中使用root账户+对应密码连接。

方案2:新建专用MySQL用户供IDEA使用

  • 第一步:控制台执行命令登录MySQL:sudo mysql -u root
  • 第二步:创建新用户,将自定义用户名、自定义密码替换为你要设置的账号信息:
    CREATE USER '自定义用户名'@'localhost' IDENTIFIED BY '自定义密码';
  • 第三步:给新用户授权,以下示例授予所有数据库的全部权限,你也可以按需限制仅授权指定数据库:
    GRANT ALL PRIVILEGES ON *.* TO '自定义用户名'@'localhost' WITH GRANT OPTION;
  • 第四步:刷新权限使配置生效:FLUSH PRIVILEGES;
  • 第五步:退出MySQL控制台,用新创建的账号测试登录,成功后即可在IDEA中使用该账号连接。
排查提示

如果配置完成后依然连接失败,可按顺序检查:

  • IDEA连接配置中Host是否为localhost、端口是否为你实际设置的MySQL端口(默认3306)
  • 输入的用户名、密码和你配置的完全一致,没有多余空格
  • MySQL服务处于运行状态:可执行sudo systemctl status mysql查看状态

内容的提问来源于stack exchange,提问作者life_fire1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 21:54:05