关于MongoDB连接字符串URI格式

连接字符串格式

你可以使用以下任一方法指定MongoDB连接字符串:

  • 标准连接字符串格式
  • DNS种子列表连接格式。

标准连接字符串格式

本节介绍用于连接MongoDB部署的MongoDB连接URI的标准格式:独立,副本集或分片集群。
标准URI连接方案具有以下形式:

mongodb://[username:password@]host1[:port1][,...hostN[:portN]]][/[database][?options]]

对于独立MongoDB

mongodb://mongodb0.example.com:27017/admin

如果开启了访问控制:

mongodb://myDBReader:D1fficultP%40ssw0rd@mongodb0.example.com:27017/admin

如果用户名或密码包含at符号@,冒号:,斜杠/或百分号%字符,请使用百分比编码方式消除歧义

对于副本集群

mongodb://mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/admin?replicaSet=myRepl

如果开启了访问控制,请包括用户凭据:

mongodb://myDBReader:D1fficultP%40ssw0rd@mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/admin?replicaSet=myRepl

对于分片集群

URI的主要组成

标准URI连接字符串包括以下部分:

ComponentDescription
mongodb://一个必需的前缀,用于标识这是一个字符串 标准连接格式。
username:password@

(可选) 验证凭据。 如果指定,客户端将在连接后尝试使用这些凭据登录到特定数据库。

如果用户名或密码包含at符号@, 分号 :, 斜杆 /, 或者百分号% , 请记得使用百分号编码消除歧义 .

host[:port]运行mongod实例(或分片群集的mongos实例)的主机(和可选端口号)。 你可以指定主机名,IP地址或 UNIX domain socket。
根据你的部署拓扑指定任意数量的主机:
  • 对于独立的,请指定独立mongod实例的主机名。
  • 对于副本集,请指定副本集配置中列出的mongod实例的主机名。
  • 对于分片群集,请指定mongos实例的主机名。
  • 如果未指定端口号,则使用默认端口27017。
/database(可选) 如果连接字符串包含username:password @形式的身份验证凭据,则要验证的数据库的名称。 如果未指定/database且连接字符串包含凭据,则驱动程序将对admin数据库进行身份验证。
?<options>(可选) 一个查询字符串,它将特定于连接的选项指定为<\name> = <\value>对。 有关这些选项的完整说明,请参见连接字符串选项。

如果连接字符串未指定数据库, 你必须在最后一个主机和开始选项字符串的问号(?)之间指定斜杠(/)。

DNS种子列表连接格式

[TO-DO]

连接字符串选项

连接选项是以下形式的对:name = value。 该值始终区分大小写。 带有&符号(即&)字符的单独选项。 在以下示例中,连接包括replicaSet和connectTimeoutMS选项:

mongodb://db1.example.net:27017,db2.example.net:2500/?replicaSet=test&connectTimeoutMS=300000

副本集选项

以下连接字符串指向名为myRepl的副本集,其成员在指定主机上运行:

·mongodb://db0.example.com:27017,db1.example.com:27017,db2.example.com:27017/admin?replicaSet=myRepl

连接选项

  • ssl
  • connectTimeoutMS
  • socketTimeoutMS
  • compressors
  • zlibCompressionLevel

连接池选项

  • maxPoolSize
  • minPoolSize
  • maxIdleTimeMS
  • waitQueueMultiple
  • waitQueueTimeoutMS

写入关注选项

  • w
  • journal
  • wtimeoutMS

读取关注选项

  • readConcernLevel

读取偏好选项

读取首选项描述了与副本集有关的读取操作的行为。 这些参数允许你在连接字符串中基于每个连接指定读取首选项。

  • readPreference
  • maxStalenessSeconds
  • readPreferenceTags

验证选项

以下连接字符串到副本集指定了admin数据库的authSource。 也就是说,用户凭据已经过admin数据库的身份验证。

mongodb://myDBReader:D1fficultP%40ssw0rd@mongodb0.example.com:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/test?replicaSet=myRepl&authSource=admin

  • authSource
  • authMechanism
  • authMechanismProperties
  • gssapiServiceName

服务器选择和发现选项

其他配置

  • appName
  • retryWrites
  • uuidRepresentation

一些例子

[TO-DO]

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页