文档简介:
步骤四:通过psql连接实例
通过PostgreSQL客户端连接实例的方式有普通连接和SSL连接两种,其中SSL连接通过了加密功能,具有更高的安全性。
准备工作
1. 通过公网地址连接关系型数据库实例,需具备以下条件。
a. 先对关系型数据库实例绑定公网地址,如何绑定公网地址,请参见3.3.4 步骤三:绑定弹性公网IP。
b.保证本地设备可以访问关系型数据库实例绑定的公网地址。
2. 在1中的弹性云服务器或可访问关系型数据库的设备上,安装PostgreSQL客户端。
请参见8.3.16 如何安装PostgreSQL客户端。
普通连接
步骤 1 登录弹性云服务器或可访问关系型数据库的设备。
步骤 2 执行如下命令连接关系型数据库实例。
psql --no-readline -U <user> -h <host> -p <port> -d <datastore> -W
表1-1 参数说明
参数 |
说明 |
<user> |
用户名,即关系型数据库帐号(默认管理员帐号为root)。 |
<host> |
主机IP,在“实例管理”页面单击实例名称,进入“基本信息”页面。在“弹性公网IP”页签查看弹性公网IP(通过连接了公网的设备访问)。 |
<port> |
端口,默认5432,当前端口,即在“实例管理”页面单击实例名称,进入“基本信息”页面,“连接信息”模块的“数据库端口”。 |
<datastore> |
需要连接的数据库名,默认的管理数据库是postgres。 |
-W是强制用户输入连接密码选项,上述命令执行后,根据提示输入密码。
示例如下:
使用root用户连接postgres数据库实例:
psql --no-readline -U root -h 192.168.0.44 -p 5432 -d postgres -W
----结束
SSL连接
步骤 1 登录管理控制台。
步骤 2 单击管理控制台左上角的,选择区域和项目。
步骤 3 选择“数据库 > 关系型数据库”。进入关系型数据库信息页面。
步骤 4 在“实例管理”页面,单击实例名称进入“基本信息”页面,单击“数据库信息”模块“SSL”处的,下载根证书或捆绑包。
步骤 5 将根证书上传至需连接PostgreSQL实例的弹性云服务器,或保存到可访问关系型数据库实例的设备。
将根证书导入弹性云服务器Linux操作系统,请参见8.3.13 将根证书导入Windows/Linux操作系统。
步骤 6 连接关系型数据库实例。以Linux系统为例,执行如下命令。
psql --no-readline -h <host> -p <port> "dbname=<database> user=<user> sslmode=verify-ca sslrootcert=<ca-file-directory>"
表1-2 参数说明
参数 |
说明 |
<host> |
主机IP,在“实例管理”页面单击实例名称,进入“基本信息”页面。在“弹性公网IP”页签查看弹性公网IP(通过连接了公网的设备访问)。 |
<port> |
端口,默认5432,当前端口,即在“实例管理”页面单击实例名称,进入“基本信息”页面,“连接信息”模块的“数据库端口”。 |
<database> |
需要连接的数据库名,默认管理数据库是postgres。 |
<user> |
用户名,即关系型数据库帐号,默认管理员帐号为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:
步骤 7 登录数据库后,出现如下信息,表示通过SSL连接成功。
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)