连接选项
本节解释了驱动程序支持的 MongoDB 连接和身份验证选项。您可以将连接选项作为连接 URI 的参数传递,以指定客户端的行为。
选项名称 | 类型 | 描述 |
---|---|---|
minPoolSize | 整数 | 指定在任何时刻单个连接池中必须存在的连接的最小数量。 默认值: 0 |
maxPoolSize | 整数 | 指定连接池在给定时间可以拥有的最大连接数。 默认值: 100 |
waitQueueTimeoutMS | 整数 | 指定线程等待连接变为可用的最大时间(以毫秒为单位)。 默认值: 120000 (120秒) |
serverSelectionTimeoutMS | 整数 | 指定驱动程序在抛出异常之前,等待服务器选择成功所需的最大时间,单位为毫秒。 默认值: 30000 (30秒) |
localThresholdMS | 整数 | 在与复制集的多个MongoDB实例通信时,驱动程序只会向响应时间小于或等于最快响应时间加本地阈值的服务器发送请求,单位为毫秒。 默认值: 15 |
heartbeatFrequencyMS | 整数 | 指定驱动程序在尝试确定集群中每个服务器的当前状态之间等待的时间间隔,单位为毫秒。 默认值: 10000 (10秒) |
replicaSet | 字符串 | 指定提供的连接字符串包含多个主机。指定时,驱动程序将尝试找到该集合的所有成员。 默认值: null |
ssl | 布尔值 | 指定所有与MongoDB实例的通信都必须使用TLS/SSL。由tls选项替代。 默认值: false |
tls | 布尔值 | 指定所有与MongoDB实例的通信都必须使用TLS。替代了ssl选项。 默认值: false |
tlsInsecure | 布尔值 | 指定驱动程序必须允许TLS连接中无效的主机名。等同于将tlsAllowInvalidHostnames设置为 默认值: false |
tlsAllowInvalidHostnames | 布尔值 | 指定驱动程序必须允许TLS连接中证书中的无效主机名。替代了sslInvalidHostNameAllowed。 默认值: false |
connectTimeoutMS | 整数 | 指定Java驱动程序在超时之前等待连接打开的最大时间,单位为毫秒。值为 默认值: 10000 (10秒) |
socketTimeoutMS | 整数 | 指定Java驱动程序在超时之前发送或接收请求的最大时间,单位为毫秒。值为 默认值: 0 |
maxIdleTimeMS | 整数 | 指定驱动程序在关闭连接之前允许池化连接空闲的最大时间,单位为毫秒。值为 默认值: 0 |
maxLifeTimeMS | 整数 | 指定Java驱动程序在关闭连接之前继续使用池化连接的最大时间,单位为毫秒。值为 默认值: 0 |
journal | 布尔值 | 指定驱动程序必须等待连接的MongoDB实例对所有写入进行磁盘上的组提交。 默认值: false |
w | 字符串或整数 | 指定写入关注点。有关更多信息,请参阅服务器文档中的w选项. 默认值: 1 |
wtimeoutMS | 整数 | 指定写入关注点的时间限制,单位为毫秒。有关更多信息,请参阅服务器文档中的wtimeoutMS选项。值为 默认值: 0 |
readPreference | 字符串 | 指定读取偏好。有关值的信息,请参阅服务器文档中的 readPreference 选项。 默认值: primary |
readPreferenceTags | 字符串 | 指定读取偏好标签。有关值的信息,请参阅服务器文档中的 readPreferenceTags 选项。 默认值: null |
maxStalenessSeconds | 整数 | 指定在驱动程序停止与该次要副本通信之前,次要副本可以有多陈旧(以秒为单位)。最小值是 90 秒或心跳频率加 10 秒,取较大者。有关更多信息,请参阅服务器文档中的 maxStalenessSeconds 选项。不提供参数或显式指定 默认值: -1 |
authMechanism | 字符串 | 指定如果提供了凭据,驱动程序使用的 认证机制。 默认值:默认情况下,客户端根据服务器版本选择最安全的机制。有关可能的值,请参阅服务器文档中的 authMechanism 选项。 |
authSource | 字符串 | 指定用于验证提供的凭据的数据库。 默认值: admin |
authMechanismProperties | 字符串 | 指定指定认证机制的认证属性,作为冒号分隔的属性和值的列表。有关更多信息,请参阅服务器文档中的 authMechanismProperties 选项。 默认值: null |
appName | 字符串 | 指定在连接握手期间提供给 MongoDB 实例的应用程序名称。可用于服务器日志和性能分析。 默认值: null |
compressors | 字符串 | 指定驱动程序尝试用于压缩发送到连接的 MongoDB 实例的请求的一个或多个压缩算法。可能的值包括: 默认值: null |
zlibCompressionLevel | 整数 | 指定 Zlib 使用来减小请求大小的程度,用于连接的 MongoDB 实例。级别可以从 默认值: null |
retryWrites | 布尔值 | 指定如果由于网络错误无法完成,则驱动程序必须重试受支持的写操作。 默认: true |
retryReads | 布尔值 | 指定驱动程序必须在网络错误导致无法完成时重试支持的读取操作。 默认: true |
serverMonitoringMode | 字符串 | 指定驱动程序使用的服务器监控协议。当设置为 默认: auto |
uuidRepresentation | 字符串 | 指定用于读取和写入操作的 UUID 表示形式。有关更多信息,请参阅有关 MongoClientSettings.getUuidRepresentation() 方法。 默认: unspecified |
directConnection | 布尔值 | 指定驱动程序必须直接连接到主机。 默认值: false |
maxConnecting | 整数 | 指定连接池可以并发建立的连接的最大数量。 默认: 2 |
srvServiceName | 字符串 | 指定驱动程序用于构造种子列表的 SRV 资源记录 的服务名称。您必须使用 DNS Seed List 连接格式 在您的 连接 URI 中使用此选项。 默认: mongodb |
要查看完整的选项列表,请参阅ConnectionString API文档。