问题描述
连接RDS PostgreSQL实例时,请求连接中断,提示以下其中一种错误信息:
server closed the connection unexpectedly This probably means the server terminated abnormallybefore or while processing the request.
Error connecting to the server: FATAL: no pg_hba.conf entry
解决方法
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
本文主要提供以下2种无法访问RDS场景的解决方法:
ECS通过内网无法访问RDS的解决办法
- 检查ECS实例的内网IP地址是否已添加到RDS实例的白名单。如果未添加,可以在实例列表页面中查看实例IP。
- 然后在RDS控制台中添加白名单,详情请参见设置白名单。
- 检查白名单是否设置成了
0.0.0.0
,正确格式应该为0.0.0.0/0
。
说明:该地址允许任何设备访问RDS实例,有安全风险,请谨慎使用。
-
如果开启了高安全白名单模式,请进行以下检查:
- 如果使用的是专有网络的内网连接地址,请确保ECS内网IP地址添加到了专有网络的分组。
- 如果使用的是经典网络的内网连接地址,请确保ECS内网IP地址添加到了经典网络的分组。
ECS以外的设备无法访问RDS的解决办法
ECS以外的设备访问RDS时,可以通过外网地址进行连接。如果通过外网地址连接失败,解决办法如下所示。
- 检查是否已设置RDS白名单。如果未设置,请参见设置白名单。
- 检查白名单是否设置成了
0.0.0.0
。正确格式为0.0.0.0/0
。
说明:该地址允许任何设备访问RDS实例,有安全风险,请谨慎使用。
- 如果开启了高安全白名单模式,需确保设备公网IP地址是添加到了经典网络的分组。
说明:专有网络的分组不适用于公网。
- 如果您已设置白名单,那么连接失败很可能是因为您在白名单中添加的设备公网IP地址并非设备真正的出口IP地址。原因如下所示。
说明:关于确认设备公网IP地址的方法,请参见定位本地IP。
- 公网IP地址不固定,可能会变动。
- IP地址查询工具或网站查询的公网IP地址不准确。
适用于
- 云数据库RDS PostgreSQL版