WSL2 Ubuntu22.04环境下GridDB连接SQL Workbench失败求助
解决GridDB通过SQL Workbench/J连接挂起问题
针对Windows 11下WSL2运行Ubuntu 22.04 + GridDB 5.5.0的连接挂起问题,按以下步骤排查:
检查WSL2网络端口可达性
WSL2采用NAT网络,Windows的127.0.0.1和WSL内部的127.0.0.1不属于同一网络栈。先在WSL终端执行hostname -I获取WSL的实际IP,然后在Windows PowerShell中运行Test-NetConnection <WSL_IP> -Port 41999,确认端口是否能连通。如果不通:- 检查WSL的localhost转发是否开启:在WSL的
/etc/wsl.conf中添加或确保以下配置:
然后在Windows中执行[network] localhostForwarding=truewsl --shutdown重启WSL生效。 - 若仍不通,手动添加端口转发规则:在Windows管理员PowerShell中执行:
netsh interface portproxy add v4tov4 listenport=41999 listenaddress=0.0.0.0 connectport=41999 connectaddress=<WSL_IP>
- 检查WSL的localhost转发是否开启:在WSL的
确认GridDB监听地址配置
GridDB默认可能仅监听WSL内部IP,需修改集群配置文件/var/lib/griddb/conf/gs_cluster.json:- 将
notificationMember中的地址改为0.0.0.0(允许所有IP访问)或WSL的实际IP,而非127.0.0.1。 - 确认
clusterName字段值为myCluster(需与连接字符串中的集群名一致)。 - 重启GridDB服务:
sudo systemctl restart griddb
- 将
修正连接字符串
将连接字符串中的127.0.0.1替换为WSL的实际IP,格式应为:jdbc:griddb://<WSL_IP>:41999/myCluster/public验证JDBC驱动兼容性
确保SQL Workbench/J使用的GridDB JDBC驱动版本与5.5.0完全匹配,避免版本不兼容导致连接异常。检查防火墙规则
- WSL端开放端口:执行
sudo ufw allow 41999/tcp,然后sudo ufw reload。 - Windows端允许SQL Workbench/J通过防火墙,或临时关闭防火墙测试连接是否恢复。
- WSL端开放端口:执行
内容的提问来源于stack exchange,提问作者Pedro González
相关产品推荐
相关产品推荐

