我想删除当前打开到特定 PostgreSQL 数据库的所有连接(会话),但不重新启动服务器或断开与其他数据库的连接。
我怎样才能做到这一点?
我尝试使用 Nagios 脚本来监视 Postgres 数据库上的数据库连接数,但我遇到了这个问题:这些连接数被视为当前打开的连接数,每 5 分钟测量一次。
SELECT sum(numbackends) FROM pg_stat_database;
Run Code Online (Sandbox Code Playgroud)
尽管如此,这似乎错过了大量的短期连接,因此统计数据与现实相去甚远。
我尝试手动运行脚本,我观察到即使在两个连接之间发生了很大的变化,彼此之间的距离也只有几秒钟。
我怎样才能以可靠的方式获得这些信息?像 max(connectios) 发生在一个时间间隔内。