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

如何配置IntelliJ IDEA使MySQL数据源通过SSH代理并使用明文密码认证?

解决IntelliJ中SSH代理+明文密码连接MySQL的问题

我之前也踩过这个坑!在IntelliJ里用SSH代理连MySQL,还要明文传输密码,折腾了好半天终于搞定了,给你捋捋我亲测有效的步骤:

第一步:先确保SSH代理能正常连接

这是基础,要是SSH隧道不通,后面数据库连接肯定白搭:

  • 打开IntelliJ的Database工具窗口,点击「+」选择MySQL数据源
  • 切换到SSH选项卡,勾选「Use SSH tunnel」
  • 填写SSH代理服务器的主机地址、端口、登录用户名和密码(如果用密钥登录就选密钥文件)
  • 先点「Test SSH Connection」验证SSH连接是否成功,成功了再往下走

第二步:启用mysql_clear_password插件(核心步骤)

默认情况下MySQL驱动不会自动启用明文密码插件,得手动配置:

  • 切回General选项卡,填写MySQL的内网地址(比如如果MySQL和SSH服务器在同一台机器,就填localhost)、端口、数据库名、MySQL用户名
  • 切换到Advanced选项卡,在搜索框输入connectionProperties,点击右侧的编辑按钮
  • 添加两个关键配置项:
    • 键:authenticationPlugins,值:com.mysql.jdbc.authentication.MysqlClearPasswordPlugin(如果你用的是MySQL 8.0+的驱动,要改成com.mysql.cj.jdbc.authentication.MysqlClearPasswordPlugin,注意带cj的版本)
    • 键:allowPublicKeyRetrieval,值:true(这个必须开,不然明文密码传输会被拦截)
  • 嫌麻烦的话,也可以直接在General选项卡的「URL」里追加参数,比如:
    jdbc:mysql://localhost:3306/your_db_name?authenticationPlugins=com.mysql.jdbc.authentication.MysqlClearPasswordPlugin&allowPublicKeyRetrieval=true
    
  • 最后点击「Test Connection」测试,应该就能连上了

容易踩的几个坑

  • 驱动版本要匹配:MySQL 8.0+必须用8.x版本的驱动,老驱动和新插件不兼容
  • MySQL用户权限:确保你的MySQL账号允许从SSH代理服务器的IP访问(测试阶段可以先给%权限,也就是允许所有IP)
  • 防火墙设置:检查SSH服务器和MySQL服务器的防火墙有没有开放对应端口(SSH一般是22,MySQL是3306)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:08:38