配置服务端远程连接
进行远程连接前,
需要在部署数据库节点的机器上设置允许客户端访问数据库,
并配置
远程连接。
对于GBase 8c 主备式场景,
需要在数据主节点上进行;
分布式场景下,需要在读写CN
或主DN 节点上进行,根据实际需要选择。
操作步骤
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
11
以下步骤需要在GBase 8c 所在主机上执行。
步骤1 以操作系统用户gbase,登录数据库节点。
步骤2 配置使用的客户端认证方式,
允许客户端以某一用户连接到数据库。
请参考7.1.1 配
置客户端接入认证。
步骤3 配置listen_addresses
listen_addresses 参数用于配置TCP-IP 允许监听的地址,首先查看参数值,确认是否已
经添加客户端机器的IP。如果已经添加,则忽略此步骤;如果没有添加客户端IP,则需要
添加以允许其访问数据库节点。
(1)
使用gs_guc 命令,查看数据库节点的listen_addresses 配置。
gs_guc check <-Z coordinator/datanode/gtm> <-N NODE_NAME> {-I INSTANCE_NAME | -D
DATADIR }
-c "listen_addresses"
注意
GBase 8c 主备式不涉及-Z 参数;分布式场景下必须指定-Z 参数。
例如,在主备式主DN(节点IP 为192.168.142.146)上查询listen_addresses,返回:
[gbase@gbasehost ~]$ gs_guc check -I all -c "listen_addresses"
expected guc information: gbase8c: listen_addresses=NULL:
[/home/gbase/clusters/gbase8c/datanode/dn1_1/postgresql.conf]
gs_guc check: gbase8c: listen_addresses='localhost,192.168.142.146':
[/home/gbase/clusters/gbase8c/datanode/dn1_1/postgresql.conf]
Total GUC values: 1. Failed GUC values: 0.
The value of parameter listen_addresses is same on all instances.
listen_addresses='localhost, 192.168.142.146'
例中返回listen_addresses='localhost, 192.168.142.146',可以看出目前listen_addresses 参
数值并没有客户端IP。
(2)
将要添加的客户端IP 追加到listen_addresses 后面,多个配置项之间用英文逗号分
隔。
gs_guc set <-Z coordinator/datanode/gtm> <-N NODE_NAME> {-I INSTANCE_NAME | -D
DATADIR } -c "listen_addresses=……"
注意
GBase 8c 主备式不涉及-Z 参数;分布式场景下必须指定-Z 参数。
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
12
分布式场景下,需保证同DN 组、同类型节点参数值一致,建议将listen_addresses
参数值直接设置为*,表示允许任意IP 访问数据库。
例如,在主备式场景下追加IP 地址10.11.12.13。
[gbase@gbasehost ~]$ gs_guc set -I all -c
"listen_addresses='localhost,192.168.142.146,10.11.12.13'"
步骤4 配置pg_hba.conf,添加数据库主节点IP 和客户端IP。详细说明,参见7.1.1 配置客
户端接入认证。
(1)
在pg_hba.conf 配置文件中添加数据库主节点IP,其中initial_user 为数据库初始用
户名称。
gs_guc reload <-Z coordinator/datanode/gtm> <-N NODE_NAME> {-I INSTANCE_NAME |
-D DATADIR } -h "host all initial_user hostip/32 trust"
例如,添加主DN 节点192.168.142.146。
[gbase@gbasehost ~]$ gs_guc reload -Z datanode -I all -h "host all gbase