MongoDB Compass连接超时及SSL错误问题求助
问题概述
Mac上使用MongoDB Compass连接MongoDB Cloud数据库时,频繁出现Server selection timed out after 30000 ms报错;切换Google/Cloudflare DNS后,出现SSL相关错误TLSV1_ALERT_INTERNAL_ERROR。同一网络下其他设备可正常连接,已配置MongoDB Cloud网络访问规则(含0.0.0.0/0及当前IP),且重装Compass后问题依旧。
排查与解决步骤
检查本地安全软件拦截
关闭第三方防火墙、杀毒软件或网络监控工具,测试连接;进入「系统设置」→「网络」→「防火墙」,确认MongoDB Compass被允许通过系统防火墙。重置Compass配置文件
完全关闭Compass,执行命令删除配置文件:rm -rf ~/.mongodb-compass重新打开Compass,手动输入连接字符串(不要使用保存的连接记录)重试。
调整SSL/TLS连接参数
在Compass连接界面点击「Advanced Options」:- 将「SSL」选项设为
Required - 切换「TLS Version」为
TLS 1.2或TLS 1.3 - 临时取消勾选「Validate SSL Certificates」测试(不建议长期保持关闭)
- 将「SSL」选项设为
排查网络代理影响
关闭全局代理或VPN;在Compass「Advanced Options」中取消勾选「Use System Proxy Settings」后重试连接。验证连接字符串有效性
从MongoDB Cloud控制台重新复制完整连接字符串,确保替换<password>为实际数据库用户密码,特殊字符需做URL编码(如@替换为%40)。测试基础网络连通性
用ping测试集群地址可达性:ping your-cluster-address.mongodb.net用
nc测试27017端口是否开放:nc -zv your-cluster-address.mongodb.net 27017若不通,说明本地网络到MongoDB Cloud的27017端口被阻断,需联系网络管理员排查。
内容的提问来源于stack exchange,提问作者flochristos

