linux下postgresql的连接数查看及管理
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
1.查询当前连接数: select count(*) from pg_stat_activity;
2.查询最大连接数 show max_connections;
3.修改最大连接数 SHOW config_file:查看postgresql.conf配置文件位置 然后修改配置文件中max_connections=1024
4.重启服务 service postgresql restart 或者:pg_ctl restart
连接数大小参数
max_connection
查看连接总数
select count(*) from pg_stat_activity;
查看所有连接的用户
select * from pg_stat_activity;
结果集会显示当前连接的数据库名、用户、IP地址、开始时间、等待事件、查询语句等
pg_stat_activity其实是一个视图。
结束连接的进程
pg_terminate_backend 是pg的内部方法另外还有一个叫pg_cancel_backend这个方法在8.4以前的版本中就一直存在。这两个方法的区别在于pg_cancel_backend 只是取消当前某一个进程的查询操作但不能释放数据库连接。但pg_terminate_backend 可以在pg的后台杀死这个进程从而释放出宝贵的连接资源
SELECT pg_terminate_backend(15278)
杀死所有idle的进程
postgres=# select pg_terminate_backend(pid) from pg_stat_activity where state=’idle’;
pg_terminate_backend
t
t
(2 rows)
或在PG数据库mydb服务器中查找进程PID然后进行kill。
ps -ef|grep 15278
kill -9 15278
pgadmin 可以也可以查看到当前所有连接。