PostgreSQL查看正在执行的任务并强制结束的操作方法

查看任务sql语句:

SELECT
  procpid,
  start,
  now() - start AS lap,
  current_query
FROM
  (SELECT
    backendid,
    pg_stat_get_backend_pid(S.backendid) AS procpid,
    pg_stat_get_backend_activity_start(S.backendid) AS start,
    pg_stat_get_backend_activity(S.backendid) AS current_query
  FROM
    (SELECT pg_stat_get_backend_idset() AS backendid) AS S
  ) AS S
WHERE
  current_query <> '<IDLE>'
ORDER BY
  lap DESC;

其中

procpid:进程id
start:进程开始时间
lap:经过时间
current_query:执行中的sql

强制停止某一个任务:

SELECT pg_cancel_backend(进程id);

补充:

SELECT
 pid,
 datname AS db,
 query_start AS start,
 now() - query_start AS lap,
 query
FROM pg_stat_activity
WHERE state <> 'idle' and query not like '%pg_stat_activity%'
 and (now() - query_start) > interval '10 seconds';

到此这篇关于PostgreSQL查看正在执行的任务并强制结束的文章就介绍到这了,更多相关PostgreSQL查看正在执行内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 查看postgresql数据库用户系统权限、对象权限的方法

    PostgreSQL简介 PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统.POSTGRES的许多领先概念只是在比较迟的时候才出现在商业网站数据库中.PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询.外键.触发器.视图.事务完整性.多版本并发控制等.同样,PostgreSQL也可以用许多方法扩展,例如通过增加新的数据类型.函数.操作符

  • postgresql 实现启动、状态查看、关闭

    利用psql启动数据库 [postgres@highgo ~]$ pg_ctl start 查看系统中运行的postgres进程 #ps -ef | grep postgres 连接postgresql数据库 #psql -h 127.0.0.1 -d postgres -U postgres 停止postgresql数据库实例 #pg_ctl stop #ps -ef | grep postgres 启动服务器最简单的方法是像下面这样: $ postgres -D /usr/local/pgs

  • PostgreSQL 查看数据库,索引,表,表空间大小的示例代码

    一.简介 PostgreSQL 提供了多个系统管理函数来查看表,索引,表空间及数据库的大小,下面详细介绍一下. 二.数据库对象尺寸函数 函数名 返回类型 描述 pg_column_size(any) int 存储一个指定的数值需要的字节数(可能压缩过) pg_database_size(oid) bigint 指定OID的数据库使用的磁盘空间 pg_database_size(name) bigint 指定名称的数据库使用的磁盘空间 pg_indexes_size(regclass) bigin

  • PostgreSQL 默认权限查看方式

    如何查看PostgreSQL默认权限 当我们对Postgresql的某个用户授予默认权限时, pg_default_acl表存储要被分配给新创建对象的初始权限.你可能通过查询该表获取默认权限,先了解下官方文档的解释: 表 50-17. pg_default_acl的列: 名称 类型 引用 描述 oid oid 行标识符(隐藏属性,必须被显式选择才会显示) defaclrole oid pg_authid.oid 与此项相关的角色的OID defaclnamespace oid pg_namesp

  • Postgresql - 查看锁表信息的实现

    查看表锁信息,是DBA常用的脚本之一. 实验环境: CentOS 7 PG 10.4 先通过A窗口执行 mytest=# begin; BEGIN mytest=# update t1 set col1 = 'a' where id =1 ; UPDATE 1 mytest=# 打开B窗口执行 mytest=# begin; BEGIN mytest=# update t1 set col1 = 'b' where id =2; UPDATE 1 mytest=# update t1 set c

  • PostgreSQL查看正在执行的任务并强制结束的操作方法

    查看任务sql语句: SELECT procpid, start, now() - start AS lap, current_query FROM (SELECT backendid, pg_stat_get_backend_pid(S.backendid) AS procpid, pg_stat_get_backend_activity_start(S.backendid) AS start, pg_stat_get_backend_activity(S.backendid) AS curr

  • CVE-2019-9193之PostgreSQL 任意命令执行漏洞的问题

    目录 一.靶场环境 二.漏洞利用 三.漏洞修复 起序:客户内网测试的时候遇到的,搭建一个环境,写个笔记记录一下. 一.靶场环境 使用的是 github 上的 vulhub 环境.PostgreSQL 版本为 10.7. vulhub:https://github.com/vulhub/vulhub 1.任意命令执行 具有数据库服务器文件读取权限的攻击者可以利用此漏洞执行任意系统命令. 从 9.3 版本开始,Postgres 新增了一个 COPY TO/FROM PROGRAM 功能,允许数据库的

  • PostgreSQL查看带有绑定变量SQL的通用方法详解

    当我们在PostgreSQL中分析一些历史的SQL问题时,往往看到的SQL都是带有绑定变量的.而对于pg,我们没法像Oracle一样通过例如dba_hist_sqlbind之类的视图去获取历史的绑定变量值.不仅如此,对于这些带有绑定变量的SQL,我们甚至没法像在Oracle中一样获取一个预估的执行计划. 在pg中使用explain去执行则会报错: bill=# explain select * from t1 where id = $1 and info = $2; ERROR: there i

  • pycham查看程序执行的时间方法

    如下所示: import time 首先导入时间模块 在程序开始执行的地方写入: start=time.clock() 在程序末尾写入: end=time.clock() 打印出运行时间: print("final is in ",end-start) 以上这篇pycham查看程序执行的时间方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 查看django执行的sql语句及消耗时间的两种方法

    下面介绍两种查看django 执行的sql语句的方法. 方法一: queryset = Apple.objects.all() print queryset.query SELECT `id`, `name` FROM `apple` 该方法只能查看select语句,但不能查看其他更新保存的语句,会报错. 也就是说只有 Queryset 有query方法.接下来看第二种方法. 方法二: from django.db import connection print connection.queri

  • postgresql查看表和索引的情况,判断是否膨胀的操作

    索引膨胀的几个来源: 1 大量删除发生后,导致索引页面稀疏,降低了索引使用效率. 2 PostgresQL 9.0之前的版本,vacuum full 会同样导致索引页面稀疏. 3 长时间运行的事务,禁止vacuum对表的清理工作,因而导致页面稀疏状态一直保持. 查看重复索引 SELECT pg_size_pretty(SUM(pg_relation_size(idx))::BIGINT) AS SIZE, (array_agg(idx))[1] AS idx1, (array_agg(idx))

  • 易语言强制结束线程分析

    命令名:强制结束线程 返回真表示执行成功.本命令为初级命令. 参数 数据类型 说明 线程句柄 整数型(int) 可通过"启动线程"的第三个参数获取线程句柄. 强制结束一个线程的例子: .版本 2 .支持库 EThread .程序集 窗口程序集1 .程序集变量 线程句柄, 整数型 .子程序 _按钮1_被单击 启动线程 (&子程序1, , 线程句柄) .子程序 子程序1 .局部变量 n, 整数型 .计次循环首 (1000, n) 输出调试文本 (到文本 (n)) .计次循环尾 ()

  • quartz定时执行任务,并配置web.xml的操作方法

    今天项目上需要做个定时任务,临时学的,quartz的功能还是很强大用起来也方便,这里的demo只是实现每天定时执行一次,其他功能可以在此基础上继续深入学习,哈哈 睡觉,明天继续. 一.maven依赖: <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.3</version> &l

  • Postgresql 查看SQL语句执行效率的操作

    Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看 SQL 语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句. Explain语法: explain select - from - [where ...] 例如: explain select * from dual; 这里有一个简单的例子,如下: EXPLAIN SELECT * FROM tenk1; QUERY PLAN ---------

随机推荐