使用pymongo连接Azure Cosmos DB for MongoDB vCore失败求助
解决Azure Cosmos DB MongoDB vCore集群连接的ConfigurationError问题
错误原因
你的COSMOS_MONGO_SERVER变量末尾带有斜杠/,拼接后连接字符串中的服务器地址部分变成了sample-db.mongocluster.cosmos.azure.com/?tls=...,这种格式会导致DNS解析失败,触发ConfigurationError。
解决方案
1. 修正服务器地址格式
移除COSMOS_MONGO_SERVER末尾的斜杠,确保其格式为:
sample-db.mongocluster.cosmos.azure.com
2. 优化连接字符串拼接(可选)
改用f-string拼接连接字符串,可读性更强,也能减少拼接错误:
mongo_conn = f"mongodb+srv://{COSMOS_MONGO_USER}:{COSMOS_MONGO_PWD}@{COSMOS_MONGO_SERVER}?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000" mongo_client = pymongo.MongoClient(mongo_conn)
3. 验证连接字符串格式
最终的连接字符串应该类似这样(替换占位符为实际值):
mongodb+srv://username:password@sample-db.mongocluster.cosmos.azure.com?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000
内容的提问来源于stack exchange,提问作者Hari
相关产品推荐
相关产品推荐

