如何解决mysql删除表时锁表问题


本文摘自PHP中文网,作者V,侵删。

解决mysql删除表时锁表问题的方法:首先查询是否有正在执行的事务,如果有未提交的事务,则kill事务或等待事务提交;然后重新执行删除表操作即可。

问题描述:

(推荐教程:mysql视频教程)

1、drop table 的时候导致表被锁,一直再等待。

2、SHOW FULL PROCESSLIST ; 能找到等待中的进程。

3、kill 相应的锁之后,查询不受影响。

4、再次删除这个表又出现锁表。

问题解决:

通过如下语句查询是否有正在执行的事务, 如果有未提交的事务, 可以考虑kill事务或等待事务提交。

1

SELECT trx_state, trx_started, trx_mysql_thread_id, trx_query FROM information_schema.innodb_trx;

查询到一个正在执行的事务,kill掉之后执行删除表操作正常。

相关推荐:mysql教程

以上就是如何解决mysql删除表时锁表问题的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

mysql数据库管理员密码忘记如何解决

mysql存储过程是什么样

了解mysql如何优化

如何对mysql数据库的表结构进行修改

mysql中数据库覆盖导入的几种方式总结

mysql循环语句之while循环测试

service命令管理mysql启动和停止的方法介绍

mysql替换时间字段且时分秒不变的方法

mysql用navicat导出数据字典的方法介绍

正版数据库管理工具 navicat for mysql 中文版软件安装、破解步骤

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...