记一次处理mysql数据库无故锁表的经历

ggwudivs 2019-09-25 原文

记一次处理mysql数据库无故锁表的经历

某日,生产环境上的用户表突然无故锁表,原以为只是偶发的bug。所以第一时间想到的解决方案简单粗暴:重启数据库(service mysqld restart)。问题得以解决。

10min后,该表再次锁表。终于意识到问题并没有那么简单。

经过多方查资料,各种尝试。比如kill进程等方法,均无效。

最终看到一个,有可能是因为磁盘空间不足的原因,瞬间感觉就是它了。

df -h查看服务器磁盘占用情况,果然used已经100%了(没有做磁盘空间占用预警^-^!!)。

只能删除大文件了,一般tomcat的logs目录下的catalina.out文件都特别大。

一查,果然已经有15个G之多了。rm -f catalina.out 删除文件。

再用df -h查看磁盘占用情况。并没有任何改变。

经多方查证发现:删除正在使用中的文件时,系统不会立即释放文件所占空间。

此时可通过:
1、重启(生产环境重启,万一起不来呢。况且还是大晚上在家加班,起不来还得连夜处理。直接pass)
2、kill掉删除文件的进程
     lsof |grep deleted    查找删除文件的进程(第二列是进程id,最后一列是删除文件的路径)

     kill -9 进程id  (删除对应的进程)

再次df -h查看磁盘占用情况,磁盘空间已释放。

另外,锁表的问题还导致,主从同步停止。

重置主从同步,参考另一篇文章链接

 

发表于
2019-09-25 15:31 ggwudivs 阅读() 评论() 编辑 收藏

 

版权声明:本文为ggwudivs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ggwudivs/p/11584971.html

记一次处理mysql数据库无故锁表的经历的更多相关文章

随机推荐

  1. Linux应急响应(三):挖矿病毒

    0x00 前言 ​ 随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的 […]...

  2. 程序员的踩坑经验总结(四):死锁

    程序员的踩坑经验总结(四):死锁 死锁你是怎么解决的呢?我的方式应该和你不一样,不一样,不一样。不信,你看过来 […]...

  3. 使用Dapper处理多个结果集和多重映射的教程

    在本文中,我们将介绍如何使用DAPPER从单个数据库调用中读取数据库中的多个结果集。我们将看看我们可能希望这样 […]...

  4. ubuntu18安装网易云音乐 – tarencez

    ubuntu18安装网易云音乐 1.打开ubuntu软件搜索网易云安装   或 官网下载ubuntu版安装包, […]...

  5. 大龄IT人的新的一年 – IT职涯

           一转眼,工作十几年了,之前由于有时要出差,孩子偶尔放回老家,有时到处找人看孩子,虽然不出差时都是 […]...

  6. 让嵌入到WORD或者WPS中的VISIO图片自动调整大小

    有时候需要编辑嵌入到WORD或者WPS中的VISIO图片,如何能够让图片可以自动调整大小呢,其实很简单,双击图 […]...

  7. PS–磨皮技巧

    1.高斯模糊: 1).ctrl + J新建图层,滤镜–模糊–高斯模糊,设置参数为8; […]...

  8. Java学习笔记-数组操作

    数组概述 数组的定义 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后循序排列组 […]...

展开目录

目录导航