文档首页> > 快速入门> 集群> 初始化设置> 连接实例

连接实例

更新时间: 2018-12-06 15:30

操作场景

通过数据库客户端连接实例的方式有普通连接和SSL连接两种,其中SSL连接通过了加密功能,具有更高的安全性。为了提升数据在网络传输过程中的安全性,建议采用SSL方式。

前提条件

  1. 准备弹性云服务器或可访问文档数据库的设备。
    • 通过弹性云服务器连接文档数据库实例,创建一台弹性云服务器。

      创建并连接弹性云服务器,请参见如何创建和连接弹性云服务器

    • 通过公网地址连接文档数据库实例,需具备以下条件。
      1. 为实例中的节点绑定公网地址,如何绑定公网地址,请参见开启公网访问
      2. 保证本地设备可以访问文档数据库绑定的公网地址。
  2. 1中的弹性云服务器或可访问文档数据库的设备上,安装MongoDB客户端。

    安装MongoDB客户端,请参见如何安装MongoDB客户端

普通连接

使用该方式连接,请务必关闭SSL连接,如何关闭,请参见关闭SSL连接

  1. 连接弹性云服务器或可访问文档数据库的设备。
  2. 连接文档数据库实例

    • 方式一:通过Linux命令连接实例

      ./mongo --host <DB_HOST> --port <DB_PORT> -u <DB_USER> -p --authenticationDatabase admin

    • 方式二:通过连接地址连接实例

      ./mongo mongodb://rwuser:****@<DB_HOST>:<DB_PORT>/test?authSource=admin

    说明:
    实际连接地址可在界面上单击目标实例,在基本信息页面的“数据库连接”处单击 获取。
    • 随机连接表示在多个mongos节点中,随机连接一个mongos节点。
    • 指定连接表示连接指定mongos节点。
    • DB_HOST是连接的远程数据库实例IP,即实例“基本信息”页面,节点列表中的“内网IP”。如果通过连接了公网的设备访问,DB_HOST为实例“基本信息”页面,节点列表中的“弹性IP”。
    • DB_PORT是端口,即实例“基本信息”页面,“实例信息”模块对应的“数据库端口”。
    • DB_USER是帐号名,即数据库帐号,默认为rwuser。
    • ****是数据库帐号对应的密码。如果密码中包含特殊字符“@”和 “:”,请分别用“%40”和“%3A”替换。

    Linux方式连实例出现如下提示时,输入数据库帐号对应的密码:

    Enter password:
    • 通过Linux命令连接实例,示例如下:

      ./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin

    • 通过连接地址连接实例,示例如下:

      ./mongo mongodb://rwuser:****@192.168.1.6:8635/test?authSource=admin

  3. 检查连接结果。出现如下信息,说明连接成功。

    mongos>

SSL连接

  1. “实例管理”页面,单击实例名称进入“基本信息”页面,单击“SSL”处的“下载证书”,下载根证书。
  2. 上传根证书至需要连接实例的弹性云服务器,或保存到可访问文档数据库的设备。

    根据不同的平台选择相应的上传方法。Linux下可参考命令:

    scp <IDENTITY_FILE> <REMOTE_USER>@<REMOTE_ADDRESS>:<REMOTE_DIR>

    • IDENTITY_FILE为存储根证书的文件目录,该文件目录权限为600。
    • REMOTE_USER为弹性云服务器的操作系统用户。
    • REMOTE_ADDRESS为弹性云服务器的主机地址。
    • REMOTE_DIR为将根证书上传到弹性云服务器的文件目录。

    Windows平台下,请使用传输工具上传根证书。

  3. 连接数据库实例。

    • 方式一:通过Linux命令连接实例

      ./mongo --host <DB_HOST> --port <DB_PORT> -u <DB_USER> -p --authenticationDatabase admin --ssl --sslCAFile <FILE_PATH> --sslAllowInvalidHostnames

    • 方式二:通过连接地址连接实例

      ./mongo mongodb://rwuser:****@<DB_HOST>:<DB_PORT>/test?authSource=admin --ssl --sslCAFile <FILE_PATH> --sslAllowInvalidHostnames

    说明:
    • 为了保证社区增强版集群内部通讯不占用用户IP带宽等资源,社区增强版集群证书使用内部管理IP生成。通过SSL方式连接社区增强版集群实例时,需要添加“--sslAllowInvalidHostnames”。
    • 社区版集群支持同时配置内部证书和对外证书,因此不用添加该参数。
    • 实际连接地址的获取方式请参见普通连接
    • DB_HOST是连接的远程数据库实例IP,即实例“基本信息”页面,节点列表中的“内网IP”。如果通过连接了公网的设备访问,DB_HOST为实例“基本信息”页面,节点列表中的“弹性IP”。
    • DB_PORT是端口,即实例“基本信息”页面,“实例信息”模块对应的“数据库端口”。
    • DB_USER是帐号名,即数据库帐号,默认为rwuser。
    • ****是数据库帐号对应的密码。如果密码中包含特殊字符“@”和 “:”,请分别用“%40”和“%3A”替换。
    • FILE_PATH是存放根证书的路径。

    Linux方式连实例出现如下提示时,输入数据库帐号对应的密码:

    Enter password:
    • 通过Linux命令连接实例,示例如下:

      ./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames

    • 通过连接地址连接实例,示例如下:

      ./mongo mongodb://rwuser:****@192.168.1.6:8635/test?authSource=admin --ssl --sslCAFile /tmp/ca.crt --sslAllowInvalidHostnames

  4. 检查连接结果。出现如下信息,说明连接成功。

    mongos>

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

在文档使用中是否遇到以下问题







请至少选择或填写一项反馈信息

字符长度不能超过100

反馈内容不能为空!

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区
点我,12·12惊喜等着你哦~