MySql磁盘占满,阿里云提示“The MySQL server is running with the LOCK_WRITE_GROWTH option so it cannot execute “

今天照常打开日志文件查看日志,结果发现一大堆报错:“The MySQL server is running with the LOCK_WRITE_GROWTH option so it cannot execute this statement”,遂查了一下原来是阿里云的数据库被锁了

锁住的原因是因为磁盘占用满了,触发了阿里云的保护机制,自动给锁上了

我们可以去分析一下是哪些表占用了多的空间,通过命令

select TABLE_NAME, concat(truncate(data_length/1024/1024,2),’ MB’) as data_size,
concat(truncate(index_length/1024/1024,2),’ MB’) as index_size
from information_schema.tables where TABLE_SCHEMA = ‘数据库名称’
group by TABLE_NAME
order by data_length desc;
MySql磁盘占满,阿里云提示“The MySQL server is running with the LOCK_WRITE_GROWTH option so it cannot execute “_第1张图片

可以看到排在前面几个的都是数据和索引占用比较大的,这时候就可以根据自身情况对这些表进行相应数据的删除操作
通过Drop(删除整个表)或者truncate(只删除里面的数据)将表里面的数据给清理干净即可
MySql磁盘占满,阿里云提示“The MySQL server is running with the LOCK_WRITE_GROWTH option so it cannot execute “_第2张图片

注意此时无法重启,因为数据库状态还是在锁定中,清理完成后等待几分钟便可恢复正常

你可能感兴趣的:(我的数据库,mysql,数据库)