如果遇到数据库锁表,通常需要用如下方法处理:

查看表的partnum情况:

oncheck  -pt  shjz_mzb:baf01|grep -i partnum

这个里面包含了多个分区的partnum,也包含了索引的partnum。

Partition partnum              12584018

Partition partnum              12584029

Partition partnum              12584019

Partition partnum              12584024

Partition partnum              12584025

Partition partnum              12584031

Partition partnum              12584026

Partition partnum              12584027

Partition partnum              12584030

Partition partnum              12584028

把每个partnum转成十六进制如下:

因为lock table里面记录的是十六进制,而不是十进制。

Partition partnum              12584018  C0045C

Partition partnum              12584029  C0045D

Partition partnum              12584019  C00453

Partition partnum              12584024  C00458

Partition partnum              12584025  C00459

Partition partnum              12584031  C0045F

Partition partnum              12584026  C0045A

Partition partnum              12584027  C0045B

Partition partnum              12584030  C0045E

Partition partnum              12584028  C0045C

根据partnum查看锁表的情况:

onstat -k |grep -iE 'C0045C|C0045D|C00453|C00458|C00459|C0045F|C0045A|C0045B|C0045E|C0045C'|sort -nrk 6

通过上图可以可以发现:

owner:表示当前哪个会话拿着锁,会话的sid可以通过onstat  -u|grep 96edab28来查看

会话的具体操作可以通过onstat –g ses $sid来查看

type:HDR+X 表示独占锁

tblsnum:表示表的partnum的十六进制,也就是对那个表进行加锁

rowid:表示在哪个数据行上加锁,每行数据会有一个rowid

上图可以看到都是对rowid=1336802的该行数据进行加锁,但是partnum不一样,也就是表,每个索引树都需要锁住的。

根据owner找到sesion sid之后,onmode -z sid就可以杀掉会话,释放锁了。

数据库锁表的查询和处理相关推荐

  1. MySQL数据库锁表,如何释放锁

    数据库锁表,运行的程序开始报错 问题出现原因 解决办法 总结 问题出现原因 项目中某个表的数据太多而且无效,影响用户使用体验,计划用sql语句进行删除,然后手写sql进行删除数据操作,之后发现这个sq ...

  2. 数据库锁表?别慌,本文教你如何解决

    引言 作为开发人员,我们经常会和数据库打交道. 当我们对数据库进行修改操作的时候,例如添加字段,更新记录等,没有正确评估该表在这一时刻的使用频率,直接进行修改,致使修改操作长时间无法响应,造成锁表,在 ...

  3. 查看数据库锁表以及解锁

    今天启动项目时发现项目启动报错Could not open JDBC Connection for transaction,weblogic控制台上服务器也有警告.网上提示是根据实际操做确认连接池不足 ...

  4. 数据库锁表及阻塞的原因和解决办法

    数据库锁表及阻塞的原因和解决办法 问题说明 当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况.若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性.加锁是 ...

  5. 数据库实验:数据库和表、查询、视图与安全性、存储过程及游标、触发器、综合实验-水果商店进阶

    数据库实验:数据库和表.查询.视图与安全性.存储过程及游标.触发器.综合实验-水果商店进阶 实验一.数据库和表 源码1: 源码2: 小结 实验二.查询 源码 小结 实验三.视图.安全性 源码: 小结 ...

  6. Mysql 数据库锁表的原因和解决方法

    Mysql 数据库锁表的原因和解决方法 参考文章: (1)Mysql 数据库锁表的原因和解决方法 (2)https://www.cnblogs.com/xinruyi/p/11108795.html ...

  7. informix 数据库锁表分析和解决方法

    informix 数据库锁表分析和解决方法 参考文章: (1)informix 数据库锁表分析和解决方法 (2)https://www.cnblogs.com/kongzhongqijing/arti ...

  8. ORACLE数据库多表关联查询效率问题解决方案

    ORACLE数据库多表关联查询效率问题解决方案 参考文章: (1)ORACLE数据库多表关联查询效率问题解决方案 (2)https://www.cnblogs.com/baib/p/5086777.h ...

  9. 达梦数据库DM8-多表连接查询

    达梦数据库DM8-多表连接查询 系列文章目录 本文环境 1.达梦数据库连接查询介绍 2.交叉连接(cross join)迪卡集 2.1 无过滤条件 2.1 有过滤条件 3.自然连接 4.join... ...

最新文章

  1. Nginx+keepalived负载均衡高可用篇第③版
  2. 【Spring源码】Spring中的AOP底层原理分析
  3. iPhoneX-关于底部的那个一个横条的问题
  4. 小程序“errcode“:41002错误问题如何解决?
  5. Eclipse 报 “Exception in thread main java.lang.OutOfMemoryError: Java heap space ”错误的解决办法...
  6. 【caffe】OpenCV Load caffe model
  7. 手工成本维护不可以将成本改为零
  8. webpack(1)-简介和基础知识
  9. javafx之TableView的TableColumn
  10. 前端需要了解的http知识
  11. 4个强大的Linux服务器监控工具[转]
  12. Spring Boot系列教程八: Mybatis使用分页插件PageHelper
  13. 吴裕雄 python 神经网络——TensorFlow 花瓣分类与迁移学习(3)
  14. LoRa无线通信设计(一)原理
  15. jmeter使用详解
  16. 李笑来深夜宣布不做个人投资,背后有何深意?
  17. 广告公司测试软件题目,信息流广告测试题,看看你广告优化能力
  18. 水产品进口手续及报关清关注意事项2021-08-27
  19. Python面向对象06/反射/双下方法
  20. html引入第三方库,基于webpack实现多html页面开发框架七 引入第三方库如jquery

热门文章

  1. 摄像机充电器LCD数显方案主控IC数码单反相机的充电器MCU芯片方案
  2. 【JavaScript】使用正则表达式匹配整个字符串
  3. 河南联合惩戒失信建设:220家政府机构因失信被整改
  4. GeoTrans2.4.1 用户手册 之 (五) 参考信息
  5. python气象数据_python气象数据库
  6. java 图片上写字_java 在图片上写字,两个图片合并的实现方法
  7. 数据结构java教学计划编排_数据结构课程设计_教学计划编制问题
  8. 2021计算机功能室计划工作,2021年音乐室管理工作计划
  9. Glass Hearts_ Brett
  10. python 远程连服务器