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_connectionssuperuser_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 行记录)

参考

ALTER SYSTEM

20.3.1. Connection Settings

Views: 698 · Posted: 2023-10-29

————        END        ————

Give me a Star, Thanks:)

https://github.com/fendoudebb/LiteNote

扫描下方二维码关注公众号和小程序↓↓↓

扫描下方二维码关注公众号和小程序↓↓↓


Today On History
Browsing Refresh