You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Cosmos DB for MongoDB(vCore)无法建立并设置集合问题求助

Azure Cosmos DB for MongoDB (vCore) 连接超时问题

问题场景

开发基于Azure OpenAI和Cosmos DB的RAG应用,已创建Azure Cosmos DB for MongoDB (vCore)实例,连接代码运行时出现兼容性警告,执行数据库和集合创建代码时触发ServerSelectionTimeoutError超时错误。

连接代码

from urllib.parse import quote_plus

username = quote_plus("username")
password = quote_plus("password")
server = "service_name.mongocluster.cosmos.azure.com"

mongo_conn = f"mongodb+srv://{username}:{password}@{server}/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
mongo_client = pymongo.MongoClient(mongo_conn)

连接时警告(已翻译)

C:\Users\AppData\Local\Temp\ipykernel_3292\24156620.py:9: 用户警告:你似乎已连接到CosmosDB集群。有关功能兼容性和支持的更多信息,请查看相关文档
mongo_client = pymongo.MongoClient(mongo_conn)

创建数据库和集合代码

# 创建名为TryDB的数据库
db = mongo_client['TryDB']

# 若集合不存在则创建
COLLECTION_NAME = "Try_Collection"

collection = db[COLLECTION_NAME]

if COLLECTION_NAME not in db.list_collection_names():
    # 创建使用数据库共享吞吐量的非分片集合
    db.create_collection(COLLECTION_NAME)
    print("已创建集合 '{}'.\n".format(COLLECTION_NAME))
else:
    print("正在使用集合: '{}'.\n".format(COLLECTION_NAME))

执行时错误(已翻译)

ServerSelectionTimeoutError:
c.service_name.mongocluster.cosmos.azure.com:10260: 超时
(配置的超时参数:socketTimeoutMS: 20000.0ms,connectTimeoutMS: 20000.0ms),总超时:30s,拓扑信息:<TopologyDescription id: 627, topology_type: 未知, servers: [<ServerDescription
('c.service_name.mongocluster.cosmos.azure.com', 1020) server_type:
未知, rtt: 无,
error=NetworkTimeout('c.service_name.mongocluster.cosmos.azure.com:1020:
超时 (配置的超时参数:socketTimeoutMS: 20000.0ms,connectTimeoutMS: 20000.0ms)')>]

解决方案

  • 检查防火墙规则:确保本地机器的公网IP已添加到Azure Cosmos DB实例的防火墙允许列表中,同时确认本地网络未限制对Cosmos DB服务的出站访问。
  • 调整超时参数:在连接字符串中增大socketTimeoutMS和connectTimeoutMS的值,比如设置为60000(60秒),应对网络延迟问题。
  • 验证连接字符串:核对service_name、username、password是否与Azure门户中的实例信息完全一致,注意用户名是Cosmos DB的账户名,不是数据库级用户。
  • 指定标准端口:Azure Cosmos DB for MongoDB (vCore)的默认端口为10255,可在连接字符串中显式添加&port=10255。
  • 确认实例状态:登录Azure门户检查Cosmos DB实例是否正常运行,无资源过载或服务故障。

内容的提问来源于stack exchange,提问作者Murphy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 00:50:15