• 沒有找到結果。

4.2 连接单节点实例

4.2.5 通过程序代码连接单节点实例

4.2.5.2 Paython 示例

本章节主要介绍使用Python语言连接单节点实例的方法。

前提条件

1. 连接数据库的弹性云服务器必须和DDS实例之间网络互通,可以使用curl命令连接 DDS实例服务端的IP和端口号,测试网络连通性。

curl ip:port

返回“It looks like you are trying to access MongoDB over HTTP on the native driver port.”,说明网络互通。

2. 在弹性云服务器上安装Python以及第三方安装包pymongo。推荐使用 pymongo2.8版本。

3. 如果开启SSL,需要在界面上下载根证书,并上传到弹性云服务器。

连接代码

● SSL开启 import ssl

from pymongo import MongoClient

conn_urls="mongodb://rwuser:rwuserpassword@ip:port/{mydb}?authSource=admin"

connection = MongoClient(conn_urls,connectTimeoutMS=5000,ssl=True,

ssl_cert_reqs=ssl.CERT_REQUIRED,ssl_match_hostname=False,ssl_ca_certs=${path to certificate authority file})

dbs = connection.database_names()

print "connect database success! database names is %s" % dbs

● SSL关闭 import ssl

from pymongo import MongoClient

conn_urls="mongodb://rwuser:rwuserpassword@ip:port/{mydb}?authSource=admin"

connection = MongoClient(conn_urls,connectTimeoutMS=5000) dbs = connection.database_names()

print "connect database success! database names is %s" % dbs

说明

● URL中的认证数据库必须为“admin”,即“authSource=admin”。

● SSL方式连接,需要手动生成trustStore文件。

● 认证数据库必须为“admin”,之后再切换至业务数据库。

5 登录文档数据库服务控制台

前提条件

如果您已经注册华为云账号,可直接登录管理控制台,访问文档数据库服务。

如果您未注册华为云账号,请在华为云官网注册,具体操作请参见如何注册华为云管 理控制台的用户。注册成功后,该账号可访问华为云的所有服务,包括文档数据库服 务。

说明

注册成功后,您可能需要在账号下创建子用户、创建用户组并授权,具体操作请参见《统一身份 认证服务快速入门》的内容。

操作步骤

步骤1 打开华为云官网。

步骤2 单击页面右上方“控制台”,进入华为云管理控制台登录页面。

步骤3 根据界面提示,填写账号信息并单击“登录”。

成功登录管理控制台。

步骤4 单击管理控制台左上方的 ,选择区域和项目。

如果您希望独享计算资源和网络资源,请先开通专属云并申请专属计算集群资源。开 通后,您可以选择专属云区域和项目。

通过专属云购买文档数据库实例会收取一定的服务费用。

步骤5 在页面左上角单击 ,选择“数据库 > 文档数据库服务 DDS”,进入文档数据库服 务信息页面。

----结束

6 示例:购买并连接 DDS 实例

本章节以Linux系统为例,介绍从购买到内网连接集群实例的操作步骤。

步骤1:创建ECS 步骤2:创建集群实例 步骤3:连接集群实例

步骤 1:创建 ECS

1. 登录管理控制台。

2. 选择“计算 > 弹性云服务器”,单击“购买弹性云服务器”。

3. 配置基础信息后,单击“下一步:网络配置”。ECS与待连接的集群实例的区域及 可用区一致。

6-1 基础配置

6-2 选择镜像

4. 配置网络信息后,单击“下一步:高级配置”。ECS与待连接的集群实例的VPC和 安全组一致。

6-3 网络配置

5. 配置密码等信息后,单击“下一步:确认配置”。

6-4 高级配置

6. 确认配置信息后,单击“立即购买”。

6-5 确认配置

7. 查看购买成功的ECS。

6-6 购买成功

步骤 2:创建集群实例

1. 登录管理控制台。

2. 选择“数据库 > 文档数据库服务 DDS”,单击“购买数据库实例”。

3. 填选实例信息后,单击“立即购买”。ECS与待连接的集群实例的区域、可用区、

VPC和安全组一致。

6-7 基础配置

6-8 管理员设置

6-9 网络设置及购买时长

6-10 高级配置

4. 查看购买成功的DDS实例。

6-11 购买成功

步骤 3:连接集群实例

1. 本地使用Linux远程连接工具登录ECS。“Remote host”为ECS绑定的弹性公网 IP。

6-12 新建会话

2. 输入创建ECS时设置的密码。

6-13 输入密码

6-14 登录成功

3. 打开链接,下载“mongodb-linux-x86_64-rhel70-4.0.27.tgz”客户端安装包。

6-15 下载客户端

4. 上传客户端安装包到ECS。

6-16 上传客户端

6-17 上传成功

5. 在弹性云服务器上,解压安装包。

tar zxvf mongodb-linux-x86_64-rhel70-4.0.27.tgz 6. 进入安装包的“bin”文件夹下,获取客户端工具。

cd mongodb-linux-x86_64-rhel70-4.0.27/bin 其中,常用工具包含如下:

– MongoDB客户端mongo。

– 数据导出工具mongoexport。

– 数据导入工具mongoimport。

7. 使用客户端工具前,需要对工具赋予执行权限。

– 执行chmod +x mongo,赋予连接实例的权限。

– 执行chmod +x mongoexport,赋予导出数据的权限。

– 执行chmod +x mongoimport,赋予导入数据的权限。

8. 连接DDS实例。

./mongo mongodb://

rwuser:<password>@<DB_HOST1>:<DB_PORT1>,<DB_HOST2>:<DB_PORT2>/ test?authSource=admin

说明

<password>表示数据库帐号对应的密码,需要替换为真实密码。

如果密码中包含特殊字符“@”、“!”和“%”需要分别替换为对应的十六进制的URL编 码(ASSCII码)“%40”、“%21”和“%25”。

示例:密码为****@%***!,对应的URL编码为****%40%25***%216-18 连接成功

9. 常用创建数据库和集合的操作。

6-19 创建数据库

6-20 创建集合

A 修订记录

发布日期 更新特性

2021-12-30 第三十一次正式发布,包含以下修改内容:

● 新增通过程序代码连接集群实例。

● 新增通过程序代码连接副本集实例。

● 新增通过程序代码连接单节点实例。

2021-10-30 第三十次正式发布,包含以下修改内容:

新增入门概览。

2021-05-30 第二十九次正式发布,包含以下修改内容:

支持快速购买及自定义购买。

2021-04-30 第二十八次正式发布,包含以下修改内容:

参数组更名为参数模板。

2020-10-30 第二十七次正式发布,包含以下修改内容:

资源标签支持20个配额。

2020-09-30 第二十六次正式发布,包含以下修改内容:

● 下线社区增强版。

● 社区版4.0实例支持鲲鹏机型。

2020-08-30 第二十五次正式发布,包含以下修改内容:

● 社区版集群实例最大支持32个mongos和32个 shard。

● 副本集存储空间最大值调整到3000GB。

2020-07-30 第二十四次正式发布,包含以下修改内容:

副本集实例支持跨网段访问配置。

2020-07-15 第二十三次正式发布,包含以下修改内容:

支持DCC的能力。

发布日期 更新特性

2020-05-30 第二十二次正式发布,包含以下修改内容:

增强版集群实例支持企业项目。

2020-04-30 第二十一次正式发布,包含以下修改内容:

● IAM权限模板刷新。

● 支持购买多az的社区版实例 。

2020-04-15 第二十次正式发布,包含以下修改内容:

副本集实例支持同VPC下跨子网访问配置。

2020-03-31 第十九次正式发布,包含以下修改内容:

● 支持包月转按需。

● 支持创建实例密码后置。

● 社区版集群支持申请shard/config节点的地址。

2020-03-13 第十八次正式发布,包含以下内容:

修改单节点实例的连接地址。

2020-02-14 第十七次正式发布,包含以下内容:

根据界面优化更新创建实例的操作步骤。

2020-01-07 第十六次正式发布,包含以下内容:

● 调整快速入门手册大纲。

2019-11-11 第十五次正式发布,包含以下内容:

社区版集群实例的存储容量最大支持2000GB。

2019-10-18 第十四次正式发布,包含以下内容:

● 创建实例支持选择s6规格。

● 支持IPv6/IPv4双栈。

● 新增通过robo 3T工具连接DDS实例的步骤。

2019-09-11 第十三次正式发布,包含以下内容:

社区版集群实例最大支持16个mongos和16个 shard。

2019-08-13 第十二次正式发布,包含以下内容:

支持创建社区版3.4按需计费实例时选择CPU类型。

2019-07-07 第十一次正式发布,包含以下内容:

支持创建实例时选择参数组。

2019-06-13 第十次正式发布,包含以下内容:

支持专属云。

2019-04-19 第九次正式发布,包含以下内容:

● 根据界面优化更新创建实例、连接实例的操作步 骤。

发布日期 更新特性

2019-02-15 第八次正式发布,包含以下内容:

● 支持修改节点的内网IP。

● 支持通过数据复制服务迁移单节点数据库。

● 支持通过程序代码连接增强版实例。

2019-01-07 第七次正式发布,包含以下内容:

● 支持包周期购买增强版集群实例。

● 社区版购买实例页面增加“标签”配置项。

2018-11-02 第六次正式发布,包含以下内容:

● 支持批量购买包周期实例。

● 添加通过连接地址连接数据库实例的命令。

2018-09-06 第五次正式发布,包含以下内容:

● 支持实例企业项目管理。

● 单节点商用。

● 支持创建单节点包周期实例。

2018-08-03 第四次正式发布,包含以下内容:

● 购买实例界面交互优化。

● 支持创建集群包周期实例。

● 支持副本集包周期实例自动续费。

2018-07-02 第三次正式发布,包含以下内容:

● 账户余额大于或等于0元,用户所有操作不受限 制。

● 支持DDS社区增强版。

● 创建副本集实例支持多AZ。

● 调整创建实例页面“高可用类型”的位置。

● 副本集的存储空间上限值变更为2000GB。

2018-06-01 第二次正式发布,包含以下内容:

● 支持兼容社区版MongoDB 3.4版本。

● 支持创建实例时创建默认虚拟私有云资源。

2018-05-04 第一次正式发布。