当您的本地设备需要通过公网地址连接MongoDB实例时,您可以使用本文中的方法快速实现连接。

前提条件

已为MongoDB实例申请公网连接地址,详情请参见:

注意事项

本文仅适用于本地设备连接MongoDB实例的情况,如需通过ECS实例连接MongoDB实例,您可以在ECS实例的详情页面查看准确的公网IP地址和内网IP地址。

通过公网连接至MongoDB实例存在一定的安全风险,建议通过ECS实例连接MongoDB实例。

方法一 通过IP查询定位公网地址并连接实例

  1. 访问淘宝IP地址库查询您的公网地址。如何通过公网连接MongoDB实例_连接实例_用户指南_云数据库 MongoDB 版 阿里云技术文档 第1张
  2. 将获取到的公网地址添加至MongoDB白名单中,详情请参见设置白名单
  3. 在本地设备上,通过Mongo Shell登录MongoDB实例,详情请参见通过Mongo Shell连接MongoDB副本集实例
    说明 您也可以使用其他客户端工具登录MongoDB实例。

如果已经将本地设备的公网IP地址添加至MongoDB实例的白名单中,仍然无法连接MongoDB实例,而将MongoDB的白名单设置为0.0.0.0/0后可以连接。针对此情况,建议通过连接信息来定位公网地址,详情请参见方法二 通过连接信息定位公网地址并连接实例

方法二 通过连接信息定位公网地址并连接实例

  1. 将IP地址0.0.0.0/0添加到MongoDB实例的白名单中,详情请参见设置白名单
    说明 0.0.0.0/0表示允许任何设备访问MongoDB实例,有安全风险,请谨慎使用。如果使用,应当及时从白名单中删除。
  2. 在本地设备上,通过Mongo Shell登录MongoDB实例,详情请参见通过Mongo Shell连接MongoDB副本集实例
  3. 登录完成后,通过下述命令查询Mongo Shell登录的客户端信息。
    db.currentOp({"appName" : "MongoDB Shell","active" : true})

    输出示例

    如何通过公网连接MongoDB实例_连接实例_用户指南_云数据库 MongoDB 版 阿里云技术文档 第2张
    说明 如果通过其他方式登录MongoDB实例,您可通过下述命令查询所有客户端信息。
    db.runCommand({currentOp: 1, "active" : true})
  4. 将获取到的IP地址加入至MongoDB实例白名单中,并将步骤1中添加的IP地址0.0.0.0/0删除。

更多信息

如果您的公网地址不是固定的且经常变动,您可以通过以下方法连接MongoDB实例。