连接数过多会导致客户端无法连接到RDS PostgreSQL数据库,您可以查看并结束掉不需要的连接。
问题描述
连接数过多导致客户端无法连接到RDS PostgreSQL数据库,并提示以下错误。
FATAL: remaining connection slots are reserved for non-replication superuser connections
解决方案
短期方案
终止不必要的连接。
- 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏中,选择自治服务 > 一键诊断。
单击会话管理页签。
在会话管理页面,查看实例当前的会话信息,并通过结束会话功能终止不必要的会话连接。详情请参见会话管理。
长期方案
寻找并优化耗时较长的查询,以减轻系统负载,释放系统资源。详情请参见慢SQL。
开启RDS PostgreSQL的连接池功能,该功能可以帮助您有效降低频繁创建和销毁连接对实例性能的影响,控制数据库服务器的负载和资源使用。详情请参见开启或关闭连接池。
使用RDS PostgreSQL的数据库代理,该功能旨在简化数据库实例的连接管理,提升系统的高可用性、高性能及可维护性,适用于主实例负载过高、需要读写分离、连接数较多或有隔离需求等场景。详情请参见数据库代理。
若您的实例因业务需求连接数已超过当前规格的限制,并且通过连接池和数据库代理无法解决连接问题时,请考虑升级实例规格,以满足更高的连接数需求。
RDS PostgreSQL各个规格对应的最大连接数请参见RDS PostgreSQL主实例规格列表。
说明您可以在实例基本信息页的配置信息区域,查看实例当前的规格。
升级实例规格请参见变更配置。
适用于
云数据库RDS PostgreSQL版