PostgreSQL 设置并发连接数
PostgreSQL About 2,317 words查看当前连接数
select count(*) from pg_stat_activity;
整个 PostgreSQL 服务层面
整个服务器连接数的限制,主要由max_connections
来限制。
实际最大的连接数还需要为超级管理员保留的连接数superuser_reserved_connections
。
查看服务器最大连接数
show max_connections;
输出
postgres=# show max_connections;
max_connections
-----------------
100
(1 行记录)
查看为超级管理员保留的连接数
show superuser_reserved_connections;
输出
postgres=# show superuser_reserved_connections;
superuser_reserved_connections
--------------------------------
3
(1 行记录)
修改最大连接数
查看配置文件
SHOW config_file;
输出
postgres=# SHOW config_file;
config_file
-----------------------------------------------
C:/Software/pgsql-12.2-1/data/postgresql.conf
(1 行记录)
在postgresql.conf
配置文件中的增加或修改max_connections
属性。(建议增大连接的同时,扩大shared_buffers
共享缓冲区)
max_connections = 300
shared_buffers = 80MB
说明:通过命令行ALTER SYSTEM
修改max_connections
、superuser_reserved_connections
需要重启PostgreSQL
服务才能生效,不重启的话SHOW max_connections;
仍然显示原先的数值。
(不能动态调整数值:https://www.postgresql.org/message-id/3393.1156528520%40sss.pgh.pa.us)
注意:ALTER SYSTEM
会写入到postgresql.auto.conf
配置文件中,可通过ALTER SYSTEM RESET ALL
初始化所有动态修改的系统设置。
ALTER SYSTEM SET max_connections=500;
数据库层面
设置postgres
数据库的最大连接数
ALTER DATABASE postgres CONNECTION LIMIT 300;
查询数据库及限制的连接数
select datname,datallowconn,datconnlimit from pg_database;
输出
postgres=# select datname,datallowconn,datconnlimit from pg_database;
datname | datallowconn | datconnlimit
-----------+--------------+--------------
template1 | t | -1
template0 | f | -1
z-blog | t | -1
postgres | t | 300
(4 行记录)
用户层面
设置postgres
用户的最大连接数
ALTER USER postgres WITH CONNECTION LIMIT 20;
查询用户名及限制的连接数
select rolname,rolconnlimit from pg_roles;
输出
postgres=# select rolname,rolconnlimit from pg_roles;
rolname | rolconnlimit
---------------------------+--------------
pg_monitor | -1
pg_read_all_settings | -1
pg_read_all_stats | -1
pg_stat_scan_tables | -1
pg_read_server_files | -1
pg_write_server_files | -1
pg_execute_server_program | -1
pg_signal_backend | -1
z-blog | -1
postgres | 20
(10 行记录)
参考
Views: 1,140 · Posted: 2023-10-29
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...