文档章节

postgres 僵尸连接释放

jaakan
 jaakan
发布于 2015/11/19 15:50
字数 145
阅读 52
收藏 0

使用python脚本监控postgres中超时的僵尸连接并将其释放

 

#coding:utf-8
from db.SqlUtil import *
import psycopg2.extras
from datetime import datetime,timedelta
import time
import os,sys
from subprocess import *

sql_conn=Driver().getConn()
cursor = sql_conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
cursor.execute("select * from pg_stat_activity WHERE state='idle'  ORDER BY backend_start")
now=time.time()
for obj in cursor.fetchall():
    t=obj["query_start"]
    spT=now-time.mktime(t.timetuple())
    spTH=spT/3600
    if spTH>5:
        pid=obj["pid"]
        cmd="kill %s" % pid
        Popen(cmd, shell=True, stdout=PIPE)
    
cursor.close()
sql_conn.close()

 

将上段代码保存为pgMonitor.py并添加到linux的corntab中定时执行即可

© 著作权归作者所有

共有 人打赏支持
jaakan
粉丝 5
博文 33
码字总数 5991
作品 0
张家港
程序员
私信 提问
查看Postgresql的连接状况

今天遇到一个问题,就是pg一直报错,说有太多的客户端连接到数据库上面。但现在不知道是什么程序连接。pg默认的max_connection是100,我并没有修改过,以为平时公司内部用,应该够了,但现在...

CLLam
2013/06/17
0
3
PostgreSQL Linux 下 僵尸状态的处理

标签 PostgreSQL , Linux , defunct , 僵尸 , ipcrm , kill -9 , pg_ctl stop -m immediate 背景 在某些非常特殊的情况下,可能遇到数据库无法停库,也无法连接(几乎处于不可用状态)的情况。...

德哥
2018/05/06
0
0
[笔记]PostgreSQL发生crash的几种原因

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/halcyonbaby/article/details/60764015 最近调查PostgreSQLcrash,整理了下一般常见的几种原因。 1. Postgre...

寻觅神迹
2017/03/07
0
0
EDB PPAS(Oracle 兼容版) Oracle与PostgreSQL 兼容模式的参数配置切换

标签 PostgreSQL , EDB , PPAS , 参数 , Oracle模式 , PostgreSQL模式 背景 EDB PPAS是EDB推出的一款同时兼容Oracle和PostgreSQL协议的数据库,在去O的场景中,使用非常广泛,价格便宜,同时...

德哥
2018/05/06
0
0
PostgresPro buildin pool(内置连接池)版本 原理与测试

标签 PostgreSQL , 内置连接池 , pgbouncer , postgrespro 背景 PostgreSQL 与Oracle dedicate server 一样采用了线程模式,在连接数非常多时,性能下降会比较严重。 通常社区用户的做法是使...

德哥
2018/07/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

cnetos7+docker+rancher构建基于DevOps的全自动CI【01】

来自DevOps实践分享,分享从开发代码到生产环境部署的一条龙操作的实践及经验, 包含工具技术的选型及考量、私有代码库与私有镜像库的应用等。 1、环境选择 安装Rancher环境,一定要在干净的...

Elson
24分钟前
1
0
21分钟教会你分析MaxCompute账单

背景 阿里云大计算服务MaxCompute是一款商业化的大数据分析平台,其计算资源有预付费和后付费两种计费方式。并且产品每天按照project为维度进行计量计费(账单基本情况下会第二天6点前产出)...

zhaowei121
27分钟前
0
0
CTO职场解惑指南系列(一)

基于科技能够改变世界的事实,几乎每个公司的程序员都自带闪光灯。程序员的手和普通人的手自然是有区别的,“我们可是用双手改变了世界” 。(码农真的是靠双手吃饭,呵呵) 这个世界上但凡靠...

阿里云云栖社区
32分钟前
2
0
css实现图片自适应容器宽高

css实现图片自适应容器宽高的做法一般如下所示 <style>div{width: 200px; height: 200px}div img{width: 100%; height: 100%}</style><div><img src="xxxx.png" /></div> 当外层容......

小草先森
32分钟前
3
0
PlatON在CentOS上编译部署

本文作者为万向区块链CTO罗荣阁。 目录 PlatON在CentOS上编译部署 1. CentOS 环境准备 1.1. 使用rpm 安装devtoolset-7 1.2. 使用rpm 安装dos2unix 1.3. 准备PlatON代码 1.4. 确保build脚本正...

万向区块链
40分钟前
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部