postgressql提示sorry, too many clients的解决办法

简介: 本地测试PgSQL集群时频现“too many clients”错误,主因是应用端连接池(各设100)叠加超出了PostgreSQL的max_connections限制(默认100)。PgSQL不会自动回收空闲连接,需靠连接池或超时机制管理。附实用命令:SHOW max_connections;SELECT count(*) FROM pg_stat_activity;SHOW port;及OS级ulimit和端口范围检查。

最近在本地测试一个集群系统,用的pgsql,总是提示sorry, too many clients,明明就几个人再用,默认的postgresql.conf 中的 max_connections已经设为100了,后来排查发现每个集群的sql字符串的连接池都设置为100,导致超过了sql实例的max_connections配置,所以报错,那为什么pgsql不自动回收这些进程呢?

顺便贴一下查看连接和配置连接数的教程,方便后续查看

postgres标准全称PostgreSQL,而psql通常指其命令行客户端。

1. 核心限制参数

PostgreSQL 的连接数限制主要由配置文件 postgresql.conf 中的 max_connections 参数决定。

默认值:通常为 100。
理论上限:受操作系统资源(如文件描述符限制 ulimit)和内存大小限制。通常建议通过 连接池(如 PgBouncer) 来处理成千上万的并发请求,而不是直接调大该参数。

2. 如何查询当前端口和连接限制

可以通过 SQL 命令行工具(如 psql)执行以下指令来获取生产环境下的实时配置:

A. 查看最大连接数限制

SHOW max_connections;

B. 查看当前已使用的连接数

SELECT count(*) FROM pg_stat_activity;

C. 查看服务监听的端口

SHOW port;

D. 获取详细的连接槽位信息(按用户/数据库统计)

SELECT datname, usename, count(*) 
FROM pg_stat_activity 
GROUP BY datname, usename;

3. 操作系统层面的限制

即便 PostgreSQL 设置了很高的 max_connections,如果操作系统层面的端口范围或文件句柄不足,也会导致连接失败。

可用端口范围(针对客户端连接):
在 Linux 上查看:

cat /proc/sys/net/ipv4/ip_local_port_range

最大文件打开数:
查看当前进程限制:

ulimit -n

4. 如何修改限制

若需增加连接上限,请遵循以下步骤:

找到配置文件(一般是 postgresql.conf ):SHOW config_file;。
修改 max_connections = 500(根据服务器内存调整),每个连接大约需要 4MB 到 10MB 的内存(这取决于 PostgreSQL 的版本和配置)例如,在 PostgreSQL 12 中,每个连接大约需要 4MB 的内存。如果你的服务器有足够的 RAM,增加 max_connections 是安全的
必须重启服务 才能生效

sudo systemctl restart postgresql。

问题:执行”SHOW config_file;“,报错信息“SQL Error [42501]: ERROR: must be sysdba or a member of pg_read_all_settings to examine "config_file"”。

“最小权限原则”更安全,可以尝试如下操作。

-- 使用超级用户(通常是 postgres)执行

GRANT pg_read_all_settings TO 你的用户名;

提示:如果你的并发需求超过 500-1000,强烈建议在应用和数据库之间部署 PgBouncer。它能显著降低端口压力并提高资源利用率。你可以通过 PostgreSQL 官方文档 了解更多性能调优细节。

相关文章
|
6天前
|
人工智能 JSON 机器人
让龙虾成为你的“公众号分身” | 阿里云服务器玩Openclaw
本文带你零成本玩转OpenClaw:学生认证白嫖6个月阿里云服务器,手把手配置飞书机器人、接入免费/高性价比AI模型(NVIDIA/通义),并打造微信公众号“全自动分身”——实时抓热榜、AI选题拆解、一键发布草稿,5分钟完成热点→文章全流程!
10861 75
让龙虾成为你的“公众号分身” | 阿里云服务器玩Openclaw
|
6天前
|
人工智能 IDE API
2026年国内 Codex 安装教程和使用教程:GPT-5.4 完整指南
Codex已进化为AI编程智能体,不仅能补全代码,更能理解项目、自动重构、执行任务。本文详解国内安装、GPT-5.4接入、cc-switch中转配置及实战开发流程,助你从零掌握“描述需求→AI实现”的新一代工程范式。(239字)
3756 129
|
1天前
|
人工智能 Kubernetes 供应链
深度解析:LiteLLM 供应链投毒事件——TeamPCP 三阶段后门全链路分析
阿里云云安全中心和云防火墙已在第一时间上线相关检测与拦截策略!
1304 5
|
2天前
|
人工智能 自然语言处理 供应链
【最新】阿里云ClawHub Skill扫描:3万个AI Agent技能中的安全度量
阿里云扫描3万+AI Skill,发现AI检测引擎可识别80%+威胁,远高于传统引擎。
1249 2
|
12天前
|
人工智能 JavaScript API
解放双手!OpenClaw Agent Browser全攻略(阿里云+本地部署+免费API+网页自动化场景落地)
“让AI聊聊天、写代码不难,难的是让它自己打开网页、填表单、查数据”——2026年,无数OpenClaw用户被这个痛点困扰。参考文章直击核心:当AI只能“纸上谈兵”,无法实际操控浏览器,就永远成不了真正的“数字员工”。而Agent Browser技能的出现,彻底打破了这一壁垒——它给OpenClaw装上“上网的手和眼睛”,让AI能像真人一样打开网页、点击按钮、填写表单、提取数据,24小时不间断完成网页自动化任务。
2650 6