目录

PostgreSQL连接数过多

# 报错信息

FATAL: sorry, too many clients already

# 解释

原因是连接数太多,超过了在配置中设置的max_connections


# 查询

# 查询设置的最大链接数

show max_connections;
1

# 查询当前使用的链接数

select count(1) from pg_stat_activity;
1

# 查询空闲链接数-空闲链接数太多肯定有问题,可以使用下一条语句看那个ip使用的空闲链接数太多

select count(*) from pg_stat_activity where state='idle';
1

# 查询当前使用的链接数-按照ip分组

select count(*) , a.client_addr from  pg_stat_activity a group by a.client_addr
1

# 解决办法

# - 清除所有的空闲链接-治标

SELECT pg_terminate_backend(pid) from pg_stat_activity where state='idle';
1

# - 增大数据库的最大链接数-治标

需要重启数据库

alter system set max_connections=1000;
1

# - 更改程序的最大链接数-治本

- springboot+durid
  spring:
	datasource
  		druid:
  			maxActive: 10
			minIdle: 2
			minEvictableIdleTimeMillis: 600000
			maxEvictableIdleTimeMillis: 900000
- springboot+datasource
  spring:
  	datasource:
		tomcat:
  			maxActive: 10
			minIdle: 2
			minEvictableIdleTimeMillis: 600000
			maxEvictableIdleTimeMillis: 900000
上次更新: 2024-01-03, 13:22:13
最近更新
01
2023年度总结
01-03
02
MongoDB的简单的常用语法
12-11
03
cetnos7通过nfs共享磁盘文件
11-24
更多文章>