PostgreSQL 锁表

2023-10-31

PostgreSQL 锁表解决

解决

一、

碰到的问题:Navicat删除表是一直转圈
出现问题的原因:短时间多次对同一张表进行查询造成表死锁
解决思路:通过查询进程把锁住的pid查出来然后解锁:
1、查询正在运行的进程
//datname为数据库名称
select * from pg_stat_activity WHERE datname='aaa' 

select * from pg_stat_activity where state = 'active'
2、查看等待中的进程
//wait_event_type = 'Lock' 表示锁表线程
select * from pg_stat_activity WHERE datname='aaa' and wait_event_type = 'Lock'
3、释放锁定
//多个同时执行,返回结果为f
select pg_cancel_backend('上面查到的pid');
select pg_cancel_backend('上面查到的pid');
select pg_cancel_backend('上面查到的pid');

二、

执行完之后还有部分未解锁,原因为:

postgresql 在执行drop table和truncate table时候需要先申请排它锁 ACCESS EXCLUSIVE,获取这把锁之后才可以继续执行。但是如果同时这张表上还有操作正在进行,比如select操作,那么很不幸只有等待这个查询操作完成以后,drop table和truncate table才能获取这张表上的ACCESS EXCLUSIVE锁,后续的操作才能继续执行。

如下的SQL可以将正在运行的SQL杀掉
select
    pg_terminate_backend(pid),
    query
from
    pg_stat_activity
where
    query ~* 'order_table'
    and pid <> pg_backend_pid();
  • 杀掉后就可以进行删表的操作
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PostgreSQL 锁表 的相关文章

  • SQL Server 中“WITH SCHEMABINDING”的缺点?

    我有一个数据库 其中有数百个名称尴尬的表 CG001T GH066L 等 并且我对每个表都有其 友好 名称的视图 例如 视图 CUSTOMERS 是 SELECT FROM GG120T 我想将 WITH SCHEMABINDING 添加到
  • 如何将Excel文件导入到sql server 2008

    如何在不使用导入向导的情况下使用 sql 查询将 excel 文件导入到 sqlserver2008 Express Edition 中的新表中 谢谢 普拉迪 有一篇微软知识库文章列出了所有可能的方法 http support micros
  • MySQL JOIN 的评估顺序是什么?

    我有以下查询 SELECT c FROM companies AS c JOIN users AS u USING companyid JOIN jobs AS j USING userid JOIN useraccounts AS us
  • CROSS APPLY WHERE 子句在交叉应用之前或结果之后起作用吗

    我正在做一种我们在一个内部应用程序中需要的自定义模糊匹配算法 我正在努力加快速度 当我对模糊函数进行交叉应用以查找建议的匹配项时 我不想搜索不必要的数据 这是函数 select top 5 Manufacturer Manufacturer
  • 如何在 MySQL 中进行数据透视表

    我有一个关于如何在 MySQL 中旋转表的问题 我有一个数据集 像这样的列 ID Name job title 1 Sam Fireman 2 Tomas Driver 3 Peter Fireman 4 Lisa Analyst 5 Ma
  • Oracle SQL 触发器上的变异表

    我正在尝试执行触发器 但出现变异表错误 SQL 代码是这样的 CREATE OR REPLACE TRIGGER CHK Apartado D BEFORE INSERT OR UPDATE ON CONTRACTS FOR EACH RO
  • 将 PostgreSQL 扩展安装到所有模式

    我在 PostgresQL 9 1 1 上尝试扩展unaccent http www postgresql org docs 9 1 static unaccent html适用于所有模式 所以我运行了命令CREATE EXTENSION
  • 从 Rails 4 启用 Amazon RDS 中的 hstore 扩展

    我有一个 Rails 4 应用程序 它使用 ActiveRecord 与 PostgreSQL 9 3 数据库交互 该应用程序利用hstorePostgreSQL 中的扩展 用于在单个数据库字段中存储键值对 因此 Rails 会自动检测我对
  • WHERE IN 条件不接受字符串值

    我正在动态构造一个带有名称的字符串用户数据在 PL Sql 过程中通过附加用户名 单引号 和逗号 的形式 abc123 xyz456 pqr789 但是当我将此字符串传递给 SELECT 语句的 WHERE IN 条件时 SELECT FR
  • 什么时候数据库被称为嵌入式数据库?

    术语 嵌入式数据库 与 数据库 具有不同的含义吗 我见过的嵌入式数据库有两种定义 嵌入式数据库就像专门为 嵌入式 空间 移动设备等 设计的数据库系统一样 这意味着它们在紧张的环境中 内存 CPU 方面 可以合理地执行 嵌入式数据库就像不需要
  • Postgresql:使用窗口函数限制组大小的分组

    Postgresql 中有没有一种方法可以编写一个查询 该查询根据具有限制的列对行进行分组 而不丢弃其他行 假设我有一个包含三列的表格id color score与以下行 1 red 10 0 2 red 7 0 3 red 3 0 4 b
  • SQL - 我需要将总值划分为另一个表中的多行

    假设我在 SQL Server 2008 中有以下表 学校桌 School Id Course Id Total Students 1 Acct101 150 1 Acct102 100 2 Acct101 110 2 Acct102 13
  • C# SMO 远程数据库备份到本地机器

    我有一个执行 SQL 数据库备份和恢复的应用程序 这在本地计算机上运行良好 但是如果我针对另一台计算机上托管的 SQL 服务器运行此应用程序 则会出现以下错误 Microsoft SqlServer Management Smo Faile
  • 一个大连接或多个查询哪个提供更好的性能?

    我有一个名为订单的表 订单上的一列是 customer id我有一个名为 customers 的表 有 10 个字段 给定两个选项 如果我想构建订单对象数组并嵌入订单对象中的是客户对象 我有两个选择 选项1 A 首先查询订单表 b 循环遍历
  • 使用@@Identity

    我想知道如何从另一个数据库的表中获取最近生成的自动编号值 目前我正在这样做 Do Until rsA EOF Inserts new row here works Set rs New ADODB Recordset rs Open SEL
  • 设置 PHP Web 项目、基础设施

    如何最好地设置 PHP LAMP 开发环境 以便拥有开发 登台和生产服务器 一键部署到其中任何一个 以及一键回滚到任何修订 回滚还应该将数据库模式和数据回滚到源代码当前的状态 现在 我已经使用 shell 脚本为一个应用程序完成了所有这些操
  • NHibernate QueryOver<> - SubQuery 上的聚合函数

    如何使用 QueryOver 语法编写以下 SQL 语句 SELECT COUNT FROM SELECT FirstName LastName FROM People GROUP BY FirstName LastName as sub
  • sql中的sumProduct

    我正在尝试在服务器上的表中实现 sumproduct 来自 Excel select into myTable2 from myTable1 select a b c d e select c e 100 3423 from myTable
  • 使用 python sqlalchemy 通过WITH语句执行原始查询

    我正在尝试使用原始 sqlalchemy 将值插入 Postgres11 数据库text 查询 当我通过 psql client 运行以下 SQL 查询时 它可以正常工作 WITH a AS INSERT INTO person id VA
  • 使用 WAMP 在浏览器中显示为注释的 PHP 代码 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 正如标题中所述 我的 PHP 代码显示在浏览器代码检查器中 就像被注释掉一样 例如

随机推荐

  • Node.js 入门 —— 中间件

    文章目录 1 前言 2 中间件的概念 2 1 什么是中间件 2 2 中间件的调用流程 2 3 Express 中间件的格式 3 express 中间件 3 1 定义中间件函数 3 2 全局生效的中间件 3 3 局部生效的中间件 3 4 中间
  • 深度学习------keras,torch对mnist,cifar2,cifar3,cifar10数据集的读取总结

    1 tensorflow读取 1 1 mnist数据集 import tensorflow as tf from tensorflow keras datasets import mnist cifar10 cifar100 train x
  • mysql与java编写人事管理系统,java+mysql企业人事管理系统的设计

    摘 要 随着历史脚步的前进 我们步入了科技高速发展的二十一世纪 互联网技术得到了空前发展 极大地提高了人们工作的效率 改善了人们的工作生活 产业信息化管理已经成为提高企业生产与管理效率的首要选择 然而 在人事管理模块 国内的很多中小型企业依
  • 错误:非法字符:“\ufeff”

    导入开源的项目的时候 你可以碰到以上的编码问题 这一般这个项目是用eclipse开发的 主要原因是 Eclipse可以自动把UTF 8 BOM文件转为普通的UTF 8文件 但Android Studio需要重新转一下 解决方法 将编码格式U
  • Java序列化

    目录 序列化机制 transient 关键字 序列化对象 反序列化对象 序列化机制 Java 提供了一种对象序列化的机制 该机制中 一个对象可以被表示为一个字节序列 该字节序列包括该对象的数据 有关对象的类型的信息和存储在对象中数据的类型
  • 重定向丢失cookie问题

    风和日丽 阳光明媚 生产bug来了 java 设定的cookie值 重定向后这个cookie获取不到 竟然奇怪的不见了 先说解决办法 通过设置domain path可以获取到这个cookie 记住 这个要考的 domain 是域 path
  • ubuntu18.04启动时在Starting Gnome Display Manager出现问题

    Ubuntu开机一直卡在 OK Started GNOME Display Manager处 进不去系统 当你进不了系统的时候你是打不开终端的 原因 磁盘空间已满或更新异常 解决 1 按alt ctrl F1 F6 输入用户名和密码 2 输
  • 人脸识别三大经典算法_[AI频道]人脸识别商业化应用开发指南

    壹点方圆 AI频道 人工智能商业化 技术 产品与应用 一 人脸识别基本原理及应用领域 二 商业化落地中的关键点 三 从0到1快速搭建人脸识别应用 一 人脸识别基本原理及应用领域 从人工智能技术演进曲线来看 人脸识别技术目前正处于爆发阶段 并
  • 西门子828d车削编程技术_干!货!来!啦!西门子数控系统车削加工编程合集...

    哈喽 艾瑞巴蒂 如昨天预告所说 今天我们一大早就送来了诚意满满的干货 小伙伴们是不是在车床加工时遇到过手拿图纸 但不知该如何下手 如何在控制器里编程 程序开头和结尾有啥注意事项 子程序怎样编写 怎么保证螺纹的切削效果 车铣复合如何编程 等等
  • 计算机英语名词简释(轉載)

    计算机英语名词简释 一 著名公司及其商标名 Microsoft 有时缩略为MS 是全球最著名的软件商 美国软件巨头微软公司的名字 Microsoft其实是由两个英语单词组成 Micro意为 微小 Soft意为 软的 此处应为 Softwar
  • Spring boot 启用 Spring Data JPA Auditing(审计功能)

    一 Auditing功能简介 先贴上Spring Data JPA的官方文档 https docs spring io spring data jpa docs 2 0 9 RELEASE reference html 项目中每条数据在创建
  • 利用C语言 找出数组中的最大值和最小值

    include
  • cpuz北桥频率和内存频率_搞清楚时序与频率,买内存条就不会入坑

    很多时候购买者都会忽视在电脑中起到不可忽视作用的CPU以及硬盘 购买内存的时候 人们更加关注的也是它的价格以及所拥有的容量 而并非性能上的命门 频率 以及 时序 很多人表示好奇 究竟何为频率 所谓内存的频率 指的是在内存工作的过程中 以兆赫
  • 统计学中常见的分布汇总及相关概念

    常见分布 统计学中有很多常见的分布 在此对这些分布进行梳理 离散型随机变量分布 1 离散型均匀分布 若随机变量有n个不同值 具有相同概率 则我们称之为离散均匀分布 通常发生在我们不确定各种情况发生的机会 且认为每个机会都相等 例如 投掷骰子
  • datalab详细解析

    本博客参考了链接https blog csdn net qq 42792383 article details 86824293 特在此鸣谢 以下为datalab的部分解析 1 bitXor x y using only and Examp
  • Centos 部署Oracle 11g

    Centos 部署Oracle 11g 部署Oracle 11g 准备工作 服务器信息 oracle安装包 服务器准备oracle环境 安装Oracle 静默方式配置监听 以静默方式建立新库及实例 部署Oracle 11g 在SpringM
  • 传感器学习——蓝牙模块HC-05

    传感器学习 蓝牙模块HC 05 硬件连接VCC 接电源的正极 这里需要接 5V GND 接电源的负极 RXD 接收端 蓝牙模块接收从其他设备发来的数据 正常情况接其他设备的发送端TXD TXD 发送端 蓝牙模块发送数据给其他设备 正常情况接
  • 玩转Mysql系列 - 第7篇:玩转select条件查询,避免采坑

    这是Mysql系列第7篇 环境 mysql5 7 25 cmd命令中进行演示 电商中 我们想查看某个用户所有的订单 或者想查看某个用户在某个时间段内所有的订单 此时我们需要对订单表数据进行筛选 按照用户 时间进行过滤 得到我们期望的结果 此
  • mac电脑安装paste教程以及重新安装软件后不能使用解决方法

    问题背景 mac电脑安装paste教程以及重新安装软件后不能使用解决方法 mac电脑安装paste失败 安装好后还是无法使用 paste显示还是历史粘贴信息 导致无法使用 新 copy的内容也无法进入历史粘贴版里面 笔者电脑配置信息 Mac
  • PostgreSQL 锁表

    PostgreSQL 锁表解决 解决 一 碰到的问题 Navicat删除表是一直转圈 出现问题的原因 短时间多次对同一张表进行查询造成表死锁 解决思路 通过查询进程把锁住的pid查出来然后解锁 1 查询正在运行的进程 datname为数据库