当前位置:   article > 正文

MySQL锁表以及解锁

mysql锁表
1.什么是锁表

        

        mysql数据库的查询机制是在查询时会创建一个具有一定层级的数据,然后将数据从底层一直向上查询直到找到返回的数据。但是如果在单个数据库有多个连接的情况下对同一个数据表进行操作时,那么就会出现查询速度变慢的情况,当查询不出结果的时候就发生锁表了。

        除了以上的方式会导致锁表之外,还可以在对一个数据表进行备份或者迁移等操作时防止出问题去手动的进行锁表。被锁的表是无法进行任何操作的,锁表的语句如下:

LOCK TABLES tbl_name READ;

LOCK TABLES table_name READ;
2.解锁方法

        

        mysql中如果发生了锁表的情况可以通过直接杀死造成数据库进程堵塞的进程,这样没有进程去使用同一个资源就不会发生锁表的情况了。

        在mysql数据库之中打开一个空白脚本然后执行命令去查询当前有哪些进程是在使用的,然后使用kill语句将其关闭即可,命令如下:

  1. # 显示进程
  2. show processlist;
  3. # 关闭进程
  4. UNLOCK TABLES;
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/641863
推荐阅读
相关标签
  

闽ICP备14008679号