mysql查询锁表的实现方法

 更新时间:2024年09月04日 10:58:11   作者:huanhuan_m1  
本文主要介绍了mysql查询锁表的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

今天在做数据更新的时候,发现表中数据量不大,但是更新语句执行很久都没成功,经过查询后发现是表锁死导致的,本文记录一下锁表解决步骤:

1.查看表是否被锁

(1)直接在mysql命令行执行:show engine innodb status。

(2)查看造成死锁的sql语句,分析索引情况,然后优化sql。

(3)然后show processlist,查看造成死锁占用时间长的sql语句。

(4)show status like '%lock%'。

2.查看表被锁状态和结束死锁步骤

(1)查看表被锁状态:

show OPEN TABLES where In_use > 0; 这个语句记录当前锁表状态 。

(2)查询进程:

show processlist查询表被锁进程;查询到相应进程killid。

(3)分析锁表的SQL:

分析相应SQL,给表加索引,常用字段加索引,表关联字段加索引。

(4)查看正在锁的事物:

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS。

(5)查看等待锁的事物:

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS。

3.mysql查询锁表指令速查

1).查看当前锁超时时间

show variables like 'innodb_lock_wait_timeout';

2).查看全局锁超时时间

SHOW GLOBAL VARIABLES LIKE 'innodb_lock_wait_timeout';

3).更改当前锁超时时间为120秒

SET innodb_lock_wait_timeout=120;

4).更改全局锁超时时间为120秒

SET GLOBAL innodb_lock_wait_timeout=120;

5).查看锁情况

show full processlist;

6).杀死锁的命令

KILL 具体的id

到此这篇关于mysql查询锁表的实现方法的文章就介绍到这了,更多相关mysql查询锁表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL存储文本和图片的方法

    MySQL存储文本和图片的方法

    今天小编就为大家分享一篇关于MySQL存储文本和图片的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 学习mysql 如何行转列与列传行

    学习mysql 如何行转列与列传行

    这篇文章主要介绍了mysql行转列与列传行的使用方法,帮助大家更好的理解和学习MySQL的使用,语句不难,但有一定的知识参考价值,需要的朋友可以参考一下,希望给你的学习带来帮助
    2022-02-02
  • 简单了解 MySQL 中相关的锁

    简单了解 MySQL 中相关的锁

    这篇文章主要介绍了简单了解 MySQL 中相关的锁,重点介绍InnoDB中的锁相关知识,包括锁的概念及分类解析,对MySQL锁相关感兴趣的朋友跟随小编一起看看吧
    2021-05-05
  • Mysql之服务的启动、停止、重启方式

    Mysql之服务的启动、停止、重启方式

    本文介绍了在终端操作命令以及处理隐藏文件夹的两种方法:一种是直接在终端输入命令启动、停止和重启;另一种是通过拖拽文件到终端并添加命令如start或stop,同时,介绍了如何通过命令显示隐藏的usr文件夹并重新启动Finder以访问
    2024-10-10
  • 详解MySQL中varchar和int隐式转换的注意事项

    详解MySQL中varchar和int隐式转换的注意事项

    这篇文章主要为大家详细介绍了MySQL中varchar和int隐式转换的注意事项,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-12-12
  • mysql数据库详解(基于ubuntu 14.0.4 LTS 64位)

    mysql数据库详解(基于ubuntu 14.0.4 LTS 64位)

    这篇文章主要介绍了mysql数据库详解(基于ubuntu 14.0.4 LTS 64位),具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • MySQL查看和修改事务隔离级别的实例讲解

    MySQL查看和修改事务隔离级别的实例讲解

    在本篇文章里小编给大家整理的是关于MySQL查看和修改事务隔离级别的实例讲解,有兴趣的朋友们学习下。
    2020-03-03
  • MySQL最佳实践之分区表基本类型

    MySQL最佳实践之分区表基本类型

    这篇文章主要给大家介绍了关于MySQL最佳实践之分区表基本类型的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-05-05
  • MySQL中的间隙锁代码示例讲解

    MySQL中的间隙锁代码示例讲解

    锁是mysql提供的一种保证不同事务读写隔离的重要措施,通过锁机制可以有效提升决多线程下并发处理事务能力,不同的锁划分对应着不同的使用场景,本文来深入探讨一下mysql的另一种容易被忽视的锁,即间隙锁,以及与之相关的相关问题,需要的朋友可以参考下
    2023-08-08
  • MySQL 行锁和表锁的含义及区别详解

    MySQL 行锁和表锁的含义及区别详解

    这篇文章主要介绍了MySQL 行锁和表锁的含义及区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08

最新评论