• 沒有找到結果。

1.4 示例:购买并连接 MySQL 实例

2.3.3 通过内网连接 PostgreSQL 实例

2.3.3.1 内网连接实例流程

使用流程

通过内网连接PostgreSQL实例的使用流程介绍如图2-8所示。

2-8 通过内网连接实例

2.3.3.2 设置安全组规则

操作场景

安全组是一个逻辑上的分组,为同一个虚拟私有云内具有相同安全保护需求,并相互 信任的弹性云服务器和云数据库RDS实例提供访问策略。

为了保障数据库的安全性和稳定性,在使用云数据库RDS实例之前,您需要设置安全 组,开通需访问数据库的IP地址和端口。

内网连接RDS实例时,设置安全组分为以下两种情况:

● ECS与RDS实例在相同安全组时,默认ECS与RDS实例互通,无需设置安全组规 则,执行通过psql连接实例。

● ECS与RDS实例在不同安全组时,需要为RDS和ECS分别设置安全组规则。

– 设置RDS安全组规则:为RDS所在安全组配置相应的入方向规则。

– 设置ECS安全组规则:安全组默认规则为出方向上数据报文全部放行,此时,

无需对ECS配置安全组规则。当在ECS所在安全组为非默认安全组且出方向规 则非全放通时,需要为ECS所在安全组配置相应的出方向规则。

本节主要介绍如何为RDS实例设置相应的入方向规则。

关于添加安全组规则的详细要求,可参考《虚拟私有云用户指南》的“添加安全组规 则”章节。

注意事项

因为安全组的默认规则是在出方向上的数据报文全部放行,同一个安全组内的弹性云 服务器和云数据库RDS实例可互相访问。安全组创建后,您可以在安全组中定义各种 访问规则,当云数据库RDS实例加入该安全组后,即受到这些访问规则的保护。

● 默认情况下,一个用户可以创建100个安全组。 口号(5432),同时将可访问IP地址设置为远程主机地址或远程主机所在的最小子网地址,限 制远程主机的访问范围。

源地址默认的IP地址0.0.0.0/0是指允许所有IP地址访问安全组内的云数据库RDS实例。

关于添加安全组规则的详细要求,可参考《虚拟私有云用户指南》的“添加安全组规 则”章节。

操作步骤

步骤1 登录管理控制台。

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

步骤3 选择“数据库 > 云数据库 RDS”。进入云数据库 RDS信息页面。

步骤4 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“基本信息”页 面。

步骤5 设置安全组规则。

在“连接信息”模块的“安全组”处,单击安全组名称,进入安全组页面。

2-9 连接信息

步骤6 在入方向规则页签,单击“添加规则”,添加入方向规则。

单击“+”可以依次增加多条入方向规则。

2-10 添加入方向规则

2-10 入方向参数说明

参数 说明 取值样例

协议端口 网络协议。目前支持“All”、

“TCP”、“UDP”、“ICMP”

和“GRE”等协议。

Custom TCP

端口:允许远端地址访问弹性云 服务器指定端口,取值范围为:1

~65535。常用端口请参见弹性云 服务器常用端口。

通过内网连接实例时,输入已购 买的弹性云服务器的目标实例的 端口。

参数 说明 取值样例 源地址 源地址:可以是IP地址、安全组。

例如:

● xxx.xxx.xxx.xxx/32(IPv4地 址)

● xxx.xxx.xxx.0/24(子网)

● 0.0.0.0/0(任意地址)

0.0.0.0/0

描述 安全组规则的描述信息,非必填 项。

描述信息内容不能超过255个字 符,且不能包含“<”和“>”。

---结束

2.3.3.3 通过 psql 连接实例

通过PostgreSQL客户端连接实例的方式有SSL连接。SSL连接通过了加密功能,具有更 高的安全性。

创建PostgreSQL实例时默认开启SSL,实例创建完成后,不支持关闭。

前提条件

请参见如何安装PostgreSQL客户端。

SSL 连接

步骤1 登录管理控制台。

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

步骤3 在页面左上角单击 ,选择“数据库 > 云数据库 RDS”。进入云数据库 RDS信息页 面。

步骤4 在“实例管理”页面,单击实例名称进入“基本信息”页面。

步骤5 单击“SSL”处的 ,下载根证书或捆绑包。

步骤6 将根证书上传至需连接PostgreSQL实例的弹性云服务器,或保存到可访问云数据库 RDS实例的设备。

将根证书导入弹性云服务器Linux操作系统,请参见将根证书导入Windows/Linux操 作系统。

步骤7 连接云数据库RDS实例。以Linux系统为例,执行如下命令。

psql --no-readline -h <host> -p <port> "dbname=<database> user=<user>

sslmode=verify-ca sslrootcert=<ca-file-directory>"

2-11 参数说明

参数 说明

<host> 主机IP,在“实例管理”页面单击实例名称,进入“基本信息”页

面。“连接信息”模块的“内网地址”(通过弹性云服务器访 问)。

<port> 端口,默认5432,当前端口,即在“实例管理”页面单击实例名

称,进入“基本信息”页面,“连接信息”模块的“数据库端 口”。

<database> 需要连接的数据库名,默认管理数据库是postgres。

<user> 用户名,即云数据库RDS帐号,默认管理员帐号为root。

<ca-file-directory> SSL连接CA证书路径,该文件需放在执行该命令的路径下。

sslmode SSL连接模式,设置为“verify-ca”,通过检查证书链

(Certificate Chain,以下简称CA)来验证服务是否可信任。

出现如下提示时,输入数据库帐号对应的密码:

Password:

使用root用户SSL连接postgres数据库实例,示例如下:

psql --no-readline -h 192.168.0.44 -p 5432 "dbname=postgres user=root sslmode=verify-ca sslrootcert=/root/ca.pem"

Password:

步骤8 登录数据库后,出现如下信息,表示通过SSL连接成功。

SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)

----结束

常见问题

连接RDS实例失败的排查思路

后续操作

登录实例后,您可以创建数据库,进行数据迁移等操作,具体请参见:

● 通过调用API创建PostgreSQL数据库

● 通过DAS管理PostgreSQL数据库

● 使用DRS迁移PostgreSQL数据库

● 使用psql命令迁移PostgreSQL数据

相關文件