开启代理后,Datagrip访问数据库失败
java.net.SocketException: Can't connect to SOCKS proxy:Connection refused at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:359) at java.base/java.net.Socket.connect(Socket.java:633) at com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:153) at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:62) at com.mysql.cj.NativeSession.connect(NativeSession.java:120)
这意味着:
-
Java 的网络栈尝试走 SOCKS 代理
-
但目标地址(比如 127.0.0.1:9090)并没有服务在监听
-
所以抛出了 Connection refused 错误
解决方案一:
在 DataGrip 中配置(Java 的网络栈跳过 SOCKS 代理连接数据库):
打开 Help > Edit Custom VM Options
加入内容-Djava.net.useSystemProxies=false
保存后重启 DataGrip

浙公网安备 33010602011771号