使用psql无法连接数据库,并报错 FATAL:53300

本文详细解析了使用psql连接数据库时出现的FATAL:53300错误,包括错误产生的两种情况:普通用户连接已满和数据库连接总数已满。文章提供了检查数据库剩余连接数和超级用户保留连接数的方法,以及关闭空闲连接和调整最大连接数的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

012269101

使用psql无法连接数据库,并报错 FATAL:53300

目录

环境

症状

问题原因

解决方案

相关文档

报错编码

环境

系统平台:N/A

版本:4.1.1

症状

1)

psql: FATAL:  53300: remaining connection slots are reserved for non-replication superuser connections

 

2)

psql: FATAL:  53300: sorry, too many clients already    

问题原因

1)

普通用户的连接已满,保留用于非复制的超级用户连接。

当数据库剩余连接数<=为超级用户保留的连接数时,使用非超级用户连接数据库报错如上,此时只能使用超级用户连接数据库。

 

2)

数据库连接已满,无法建立新的连接。

 

 

解决方案

如何查看数据库剩余连接数:

select max_conn-now_conn as resi_conn from (select setting::int8 as max_conn,(select count(*) from pg_stat_activity) as now_conn from pg_settings where name = 'max_connections') t;

 

如何查看为超级用户保留的连接数:

show superuser_reserved_connections;

 

1、 关闭空闲连接。

select datname,pid,application_name,state from pg_stat_activity;

--查看目前所有的连接的进程id、应用名称、状态。

 

select pg_terminate_backend(pid) from pg_stat_activity;

--通过pid终止空闲连接

 

2、调整数据库最大连接数,并重启生效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值