连接选项
本部分介绍 Node.js驾驶员支持的MongoDB连接和身份验证选项,您可以在 MongoClientOptions
实例中设立这些选项。
有关直接在连接字符串中设置连接选项的更多信息,请参阅MongoDB Server手册中的 连接字符串。
名称 | 接受的值 | 默认值 | 说明 |
---|---|---|---|
appName | 字符串 |
| 指定驱动程序在连接握手过程中传递到客户端元数据中的服务器的应用名称。当建立此连接时,驱动程序会向 MongoDB 发送 |
authMechanism | 字符串 |
| 指定用于连接到服务器的身份验证机制方法。如果不指定值,驱动程序将使用默认机制,即 |
authMechanismProperties | 逗号分隔的键值对,例如 "opt1:val1,opt2:val2" |
| 指定为身份验证提供的其他选项,例如为 GSSAPI 启用主机名规范化。 |
authSource | 字符串 |
| 指定连接要对其进行身份验证的数据库。 |
autoSelectFamily | 布尔 |
| 如果设立为 |
autoSelectFamilyAttemptTimeout | non-negative integer |
| 指定使用 |
compressors | 逗号分隔的字符串列表,例如 "snappy,zlib,zstd" |
| 指定发送到服务器或从服务器接收的传输协议消息的允许压缩类型。请参阅网络压缩,获取更多信息。 |
connectTimeoutMS | non-negative integer |
| 指定在引发错误之前等待与服务器建立单个 TCP 套接字连接的时间量(以毫秒为单位)。指定 |
directConnection | 布尔 |
| 指定是否强制将所有操作分派到连接 URI 中指定的主机。 |
enableUtf8Validation | 布尔 |
| 指定 指定 您还可以在8 Node.js 代码中设立UTF- 验证。要学习;了解有关 UTF-8 字符的更多信息,请参阅维基百科上的 UTF-8 。 |
heartbeatFrequencyMS | 大于或等于 500 的整数。 |
| 指定服务器定期监控检查的间隔时间(以毫秒为单位)。 |
loadBalanced | 布尔 |
| 指定驱动程序是否连接到负载均衡器。 |
localThresholdMS | non-negative integer |
| 指定用来在合适的服务器之间进行选择的往返时间的延迟窗口大小(以毫秒为单位)。指定 |
maxIdleTimeMS | non-negative integer |
| 指定连接在关闭之前可以处于空闲状态的时间(以毫秒为单位)。指定 |
maxPoolSize | non-negative integer |
| 指定驱动程序可在连接池中创建的客户端或连接的最大数量。此数量包括正在使用的连接。 |
maxConnecting | non-negative integer |
| 指定驱动程序的连接池可以同时建立的最大连接数。 |
maxStalenessSeconds | -1,或大于或等于 90 的整数 |
| 指定从节点可能遇到但仍有资格供服务器选择的最大复制延迟(以挂钟时间为单位)。指定 |
minPoolSize | non-negative integer |
| 指定驱动程序在连接池中创建并维持的连接数。即使没有发生任何操作,连接池中也要保持这一连接数。此数量包括正在使用的连接。 |
proxyHost | 字符串 |
| 指定 SOCKS5 代理的 IPv4 地址、IPv6 地址或域名。 |
代理端口 | non-negative integer |
| 指定 SOCKS5 代理服务器的 TCP 端口号。如果设置了 |
proxyUsername | 字符串 |
| 指定用于向 SOCKS5 代理服务器进行身份验证的用户名。如果将此选项设置为零长度的字符串,驱动程序将忽略它。 |
proxyPassword | 字符串 |
| 指定用于向 SOCKS5 代理服务器进行身份验证的密码。如果将此选项设置为零长度的字符串,驱动程序将忽略它。 |
readConcernLevel | 字符串 |
| 指定客户端的默认读关注。有关更多信息,请参阅读关注。 |
readPreference | 字符串 |
| 指定客户端的默认读取偏好(不包括标签)。有关更多信息,请参见读取偏好。 |
readPreferenceTags | 逗号分隔的键:值对,例如 "dc:ny,rack:1",而且 "dc:ny" 可以指定多次,该键的每个实例都是一个单独的标签集 |
| 指定客户端的默认读取偏好标签。仅当读取偏好不是主节点("primary")模式时,此选项才有效。 驱动程序将 URI 中标签的顺序用作读取偏好的顺序。 |
replicaSet | 字符串 |
| 指定要连接到的副本集的名称。 |
retryReads | 布尔 |
| 允许重试读取。 |
retryWrites | 布尔 |
| 启用可重试写入。 |
serverMonitoringMode |
|
| 指定驱动程序监控器使用的监控模式。当此选项设置为 |
serverSelectionTimeoutMS | non-negative integer |
| 指定在抛出错误之前,为服务器选择阻塞的超时时间(以毫秒为单位)。 |
socketTimeoutMS | non-negative integer |
| 指定套接字超时前尝试发送或接收的时间(以毫秒为单位)。指定 |
SrvMaxHosts | non-negative integer |
| 指定最初填充种子列表,或在 SRV 轮询期间向拓扑结构中添加新主机时,随机选择的 SRV 结果的最大数量。 |
srvServiceName | 符合 RFC 6335 的有效 SRV 服务名称 |
| 指定在初始 DNS 种子列表发现中用于 SRV 查找的服务名称。 |
ssl | 布尔 |
|
|
TLS | 布尔 |
| 指定与服务器的连接是否需要 TLS。使用 |
tlsAllowInvalidCertificates | 布尔 |
| 指定当服务器的 TLS 证书无效时,驱动程序是否产生一个错误。将此选项设置为 |
tlsAllowInvalidHostnames | 布尔 |
| 指定当服务器主机名与 TLS 证书指定的主机名匹配时,驱动程序是否会生成错误。将此选项设为 |
tlsCAFile | 字符串 |
| 指定一个文件的路径,此文件中包含建立 TLS 连接时要信任的单个或一组证书颁发机构。要了解有关如何设置此连接选项的更多信息,请参阅 TLS 指南的提供证书文件路径部分。 |
tlsCertificateKeyFile | 字符串 |
| 指定客户端证书文件或客户端私钥文件的路径。如果同时需要这两份文件,则必须将它们合并起来。要了解设置此连接选项的更多信息,请参阅 TLS 指南的提供证书文件路径部分。 |
tlsCertificateKeyFilePassword | 字符串 |
| 指定密码,该密码负责解密用于 TLS 连接的客户端私钥。 |
tlsInsecure | 布尔 |
| 指定尽可能放宽 TLS 约束,如允许无效证书或主机名不匹配。将此选项设置为 |
waitQueueTimeoutMS | non-negative integer |
| 指定在被判定超时之前,尝试从服务器的连接池中获取一个连接所允许花费的最长时间(以毫秒为单位)。 |
zlibCompressionLevel | 介于 |
| 指定使用 zlib 压缩传输协议消息时的压缩级别。 |
更多信息
要学习;了解有关可在MongoClientOptions
实例中设立的连接选项的详情,请参阅API文档中的 MongoClientOptions。