我正在尝试使用 pymongo 设置我的 MongoDb vCore 集群的连接,这是我使用的代码
mongo_conn = "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)
以下是我收到的错误。
配置错误:名称服务器不是 dns.nameserver.Nameserver 实例或文本形式、IP 地址,也不是有效的 https URL
COSMOS_MONGO_SERVER 值采用以下格式:
sample-db.mongocluster.cosmos.azure.com/
环境:
Python:3.11.5
皮蒙戈:4.5
无法使用 pymongo 连接到 Azure Cosmos DB for MongoDB vCore:
以下是我使用 pymongo 连接 Mongo DB 的步骤:
import pymongo
允许您使用 Python 与 MongoDB 数据库交互。
mongo_client
建立与 MongoDB 服务器的连接。
它使用
collection.find()
从提供的集合中检索所有文档,然后迭代这些文档并将每个文档打印到终端。
如果执行过程中发生异常,
except
块会收集并发布错误消息。
下面是我尝试过的代码:
import pymongo
cosmosMongoUser = "*****"
cosmosMongoPwd = "*****"
cosmosMongoServ = "*****"
cosmosDbName = "newDb"
cosmosCollName = "id"
mongo_conn = f"*****"
try:
mongo_client = pymongo.MongoClient(mongo_conn)
db = mongo_client[cosmosDbName]
collection = db[cosmosCollName]
documents = collection.find()
for document in documents:
print(document)
except Exception as e:
print("Error:", str(e))
finally:
mongo_client.close()
输入:
{
"_id" : ObjectId("64f97842d438121c2813c320"),
"id" : "1",
"name" : "Pavan Balaji",
"age" : 24
}
输出: 输出端子:
{'_id': ObjectId('64f97842d438121c2813c320'), 'id': '1', 'name': 'Pavan Balaji', 'age': 24}