postgresql性能优化-最大连接数
Posted 架构艺术AA
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了postgresql性能优化-最大连接数相关的知识,希望对你有一定的参考价值。
一、最大连接数查看
postgresql数据库最大连接数是系统允许的最大连接数,当数据库并发用户超过该连接数后,会导致新连接无法建立或者连接超时。
最大连接数max_connections默认值为100。
当前总共正在使用的连接数
# select count(1) from pg_stat_activity;
显示系统允许的最大连接数,此数值包含为超级用户预留的连接数
# show max_connections;
显示系统保留的用户数superuser_reserved_connections
此参数为数据库为超级用户预留的连接数,默认值为3。当数据库的连接数达到(max_connections - superuser_reserved_connections)时,只有超级用户才能建立新的数据库连接,普通用户连接时将会返回错误信息“FATAL: sorry, too many clients already.”或者“FATAL: remaining connection slots are reserved for non-replication superuser connections”,登录数据库查询。
# show superuser_reserved_connections ;
按照用户分组查看
select usename, count(*) from pg_stat_activity group by usename order by count(*) desc;
二、最大连接数修改
通过postgresql.conf文件来修改postgresql的最大连接数
vi /var/lib/pgsql/11/data/postgresql.conf
修改完要重启postgresql
# systemctl restart postgresql-11.service
三、连接数优化
postgresql的最大连接数合适值
used_connections/max_connections在85%左右
最大连接数设置上限是根据机器的配置相关,良好硬件上的 PostgreSQL 一次可以支持几百个连接。如果先设置数千个,考虑使用连接池软件来减少连接开销。客户应该是通过应用程序访问的数据库,应用程序到数据库的访问连接数,很多都可以从连接池中利用连接。
连接池方案可以参考pg+pgpool
如下,连接池配置4*1000
postgresql修改最大连接数
1.合适的最大连接数
used_connections/max_connections在85%左右
2.修改最大连接数
postgresql最大连接数默认为100
1)打开postgresql配置文件
vim /var/lib/pgsql/9.4/data/postgresql.conf
2)修改最大连接数
max_connections = 100
3)重启postgresql服务
在CentOS 6.x系统中
service postgresql-9.4 restart
在CentOS 7系统中
systemctl restart postgresql-9.4
以上是关于postgresql性能优化-最大连接数的主要内容,如果未能解决你的问题,请参考以下文章