MongoDB集群默认连接命令报错“Multiple text records not allowed”
解决MongoDB连接时“Multiple text records not allowed”错误
针对你使用MongoDB Compass和mongosh连接集群时遇到的Error: Multiple text records not allowed错误,可按以下步骤排查解决:
验证集群SRV记录配置
登录MongoDB Atlas控制台,进入目标集群的「Connect」页面重新生成连接字符串,确认集群域名(如clusterX.random.mongodb.net)拼写无误。
用命令行验证SRV记录:- Windows:
nslookup -type=SRV _mongodb._tcp.clusterX.random.mongodb.net - Linux/macOS:
dig _mongodb._tcp.clusterX.random.mongodb.net SRV
检查返回结果,确保同一域名下只有一组合法的SRV记录,无重复或无效条目。
- Windows:
清除本地DNS缓存
本地DNS缓存可能导致旧的/错误的SRV记录被读取,执行对应系统的缓存清除命令:- Windows:
ipconfig /flushdns - macOS:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder - Linux(systemd-resolved):
sudo systemd-resolve --flush-caches
- Windows:
修正连接字符串格式
- 确保用户名、密码中的特殊字符(如
@、:、/)已做URL编码,比如@替换为%40。 - 尝试将用户名密码直接嵌入mongosh连接URL,简化命令:
mongosh "mongodb+srv://user:password@clusterX.random.mongodb.net/test" --apiVersion 1
- 确保用户名、密码中的特殊字符(如
切换公共DNS服务器
若本地DNS解析异常,尝试改用公共DNS(如Google DNS:8.8.8.8/8.8.4.4,或Cloudflare DNS:1.1.1.1),重新发起连接。
内容的提问来源于stack exchange,提问作者Shashank Priyadarshi
相关产品推荐
相关产品推荐

