Docs 菜单

Docs 主页开发应用程序Python 驱动程序pymongo

连接至 MongoDB

在此页面上

  • Overview
  • 示例应用程序
  • 连接
  • 本地部署
  • Atlas
  • 副本集(Replica Set)
  • 传输层安全性 (TLS)
  • 启用 TLS
  • 指定证书颁发机构 (CA) 文件
  • 禁用 OCSP 检查
  • 指定证书撤销列表 (CRL)
  • 出示客户端证书
  • 提供证书密钥文件密码
  • 允许不安全的 TLS
  • 禁用证书验证
  • 禁用主机名验证
  • 网络压缩
  • 压缩算法
  • zlibCompressionLevel
  • 服务器选择
  • Stable API
  • 限制MongoDB Server执行时间
  • 超时块
  • timeoutMS 连接选项

本页包含的代码示例展示了如何使用各种设置将 Python 应用程序连接到 MongoDB。

提示

要了解有关此页面上的连接选项的更多信息,请参阅每个部分中提供的链接。

要使用此页面中的连接示例,请将代码示例复制到示例应用程序或您自己的应用程序中。 请务必将代码示例中的所有占位符(例如 <hostname> )替换为 MongoDB 部署的相关值。

您可以使用以下示例应用程序来测试本页上的代码示例。 要使用示例应用程序,请执行以下步骤:

  1. 确保已安装 PyMongo。

  2. 复制以下代码并将其粘贴到新的.py文件中。

  3. 从此页面复制代码示例,并将其粘贴到文件中的指定行。

1from pymongo import MongoClient
2
3try:
4 # start example code here
5
6 # end example code here
7
8 client.admin.command("ping")
9 print("Connected successfully")
10
11 # other application code
12
13 client.close()
14
15except Exception as e:
16 raise Exception(
17 "The following error occurred: ", e)
uri = "mongodb://localhost:27017/"
client = MongoClient(uri)
uri = "<Atlas connection string>"
client = MongoClient(uri, server_api=pymongo.server_api.ServerApi(
version="1", strict=True, deprecation_errors=True))
uri = "mongodb://<replica set member>:<port>/?replicaSet=<replica set name>"
client = MongoClient(uri)

要了解有关启用 TLS 的更多信息,请参阅 TLS 配置指南中的启用 TLS

要了解有关指定 CA 文件的更多信息,请参阅 TLS 配置指南中的指定 CA 文件

要了解有关禁用 OCSP 检查的更多信息,请参阅 TLS 配置指南中的OCSP

要了解有关指定 CRL 的更多信息,请参阅 TLS 配置指南中的证书吊销列表

要了解有关指定客户端证书的更多信息,请参阅 TLS 配置指南中的提供客户端证书

要了解有关提供密钥文件密码的更多信息,请参阅 TLS 配置指南中的提供密钥密码

要了解有关允许不安全 TLS 的更多信息,请参阅 TLS 配置指南中的允许不安全 TLS

要了解有关禁用证书验证的更多信息,请参阅 TLS 配置指南中的允许不安全的 TLS

要了解有关禁用主机名验证的更多信息,请参阅 TLS 配置指南中的允许不安全的 TLS

要了解有关指定压缩算法的更多信息,请参阅网络压缩指南中的指定压缩算法

要了解有关设置 zlib 压缩级别的更多信息,请参阅网络压缩指南中的指定压缩算法

client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname>:<port>",
server_selector=<selector function>)

要了解有关自定义服务器选择的更多信息,请参阅自定义MongoDB Server选择。

from pymongo.server_api import ServerApi
client = pymongo.MongoClient("mongodb://<username>:<password>@<hostname:<port>",
server_api=ServerApi("<Stable API version>"))

要了解有关stable API的更多信息,请参阅stable API 。

with pymongo.timeout(<timeout length>):
# perform operations here

要了解有关客户端超时的更多信息,请参阅限制MongoDB Server执行时间。

要了解有关客户端超时的更多信息,请参阅限制MongoDB Server执行时间。

← 后续步骤