文档

分片集群实例连接说明

MongoDB分片集群实例分别提供Mongos、Shard和ConfigServer组件单独的连接地址,以及适用于应用程序连接的高可用ConnectionStringURI地址。本文介绍分片集群实例连接地址的获取方式和连接说明。

获取数据库连接地址

  1. 登录MongoDB管理控制台

  2. 在左侧导航栏,单击分片集群实例列表

  3. 在页面左上角,选择实例所在的资源组和地域。

  4. 单击目标实例ID或目标实例所在行操作列的管理

  5. 在目标实例页面的左侧导航栏,单击数据库连接获取目标节点的连接地址。

连接地址说明

项目

说明

地址类型

  • 私网连接

    • 专有网络:专有网络是一种隔离的网络环境,安全性和性能均高于传统的经典网络。 云数据库MongoDB实例默认提供专有网络连接地址,通过专有网络连接云数据库MongoDB实例可以获取更高的安全性和性能。

    • 经典网络:云服务在网络上不进行隔离,仅依靠云服务自身的安全组或白名单策略阻挡非法访问。

  • 公网连接:由于通过公网连接实例存在一定的安全风险,云数据库MongoDB实例默认未提供公网连接地址。如果您需要通过公网连接云数据库MongoDB实例,可以手动申请公网连接地址,申请方法请参见申请公网连接地址

ConnectionstringURI

SRV高可用连接地址

重要
  • 推荐生产环境的应用程序通过ConnectionStringURI连接数据库,客户端自动将请求发送到Mongos组件的多个节点上,实现负载均衡。Mongos组件的某个节点出现故障时,客户端能自动进行故障切换,将请求发送到状态正常的Mongos节点上。

  • SRV地址可以简化集群的维护和管理,您无需因为增删Mongos节点而修改连接地址,客户端可以无感知地与集群交互,简化了应用程序的设计和维护。

  • 默认情况下控制台不显示SRV地址,如需使用请单击数据库连接页面的申请私网SRV地址申请公网SRV地址

  • 申请公网SRV地址前,您需要先开通Mongos节点的公网地址。通过公网SRV地址连接MongoDB实例后,客户端会自动将请求发送到已开通公网地址的Mongos节点上。

  • SRV地址仅支持云盘版分片集群实例。

格式:

mongodb+srv://<username>:<password>@<srv-host>/<database>?<options>

参数说明:

  • mongodb+srv://:连接字符串的前缀,表示使用DNS SRV记录进行服务发现。

  • <username>:数据库账号的名称,默认为root。

  • <password>:数据库账号的密码。

  • <srv-host>:主机名。

  • <database>:要访问的数据库名称,默认为admin。

  • <option>:其他可选参数。

    说明

    由于SVR连接的SSL选项默认值为true,但分片集群暂不支持开启SSL,所以您需要在连接串上添加参数ssl=false。更多可选参数的介绍,请参见MongoDB官网文档

示例:

数据库账号为test,所属数据库为admin。

mongodb+srv://root:****@dds-2zef4c23xxxx-srv.mongodb.pre.nosql.aliyuncs.com:3717/admin?ssl=false

ConnectionstringURI

高可用连接地址

重要

推荐生产环境的应用程序通过ConnectionStringURI连接数据库,客户端自动将请求发送到Mongos组件的多个节点上,实现负载均衡。Mongos组件的某个节点出现故障时,客户端能自动进行故障切换,将请求发送到状态正常的Mongos节点上。

格式:

mongodb://<username>:<password>@<host1>:<port1>,<host2>:<port2>,...,<hostN>:<portN>/<database>[?&authSource=<authenticationDatabase>]

参数说明:

  • <username>:数据库账号的名称,默认为root。

  • <password>:数据库账号的密码。

  • <host>:各组件中节点的域名信息

  • <port>:各组件中节点的端口

  • <database>:要访问的数据库名称,默认为admin。

  • authSource=<authenticationDatabase>(可选):该参数用于指定数据库账号所属的数据库。<authenticationDatabase>为鉴权数据库名称。如果不配置该参数,<database>会作为鉴权数据库。

    重要

    数据库账号必须在所属的数据库下进行鉴权,才能成功鉴权。

示例:

数据库账号为test,所属数据库为admin。

mongodb://test:****@s-bp1c010266f6****.mongodb.rds.aliyuncs.com:3717,s-bp1773180e38****.mongodb.rds.aliyuncs.com:3717/admin

节点连接地址

Mongos、Shard和ConfigServer组件分别提供主节点(Primary)和从节点(Secondary)的连接地址,其中Shard组件还提供只读节点(ReadOnly)的连接地址。

说明

当实例存在只读节点时,您才能看到只读节点的连接地址。

格式:

<host>:<port>

参数说明:

  • <host>:各组件中节点的域名信息

  • <port>:各组件中节点的端口

示例:

s-bp1c010266f6****.mongodb.rds.aliyuncs.com:3717
说明

日常测试时,仅需连接Mongos组件的任意节点。如需连接Shard或ConfigServer组件的节点,请先申请对应节点的连接地址,如何申请,请参见申请Shard或ConfigServer节点连接地址

登录MongoDB数据库

  1. 获取如下信息:

    • 数据库连接地址,获取方法请参见数据库连接地址

    • 数据库账号,初始账号为root。

      重要

      不建议在生产环境中直接使用root账号连接数据库。您可以根据业务需求创建用户并分配权限,详情请参见使用DMS管理MongoDB数据库用户

    • 数据库账号对应密码。如果没有设置或忘记密码,您可以设置或修改密码,具体方法请参见重置密码

    • 要访问的数据库。当数据库账号为root时,对应的数据库为admin。

  2. 登录数据库。您可以选择以下任意一种方法登录:

常见的连接场景

相关问题

  • 本页导读 (1)
文档反馈