Linux mysql 数据磁盘空间满 处理方案

问题描述:现场项目人员反馈从前天开始始终无新数据进来,系统功能界面正常。查看了服务后台发现各服务正常,查看某服务时发现插入数据有提示表空间满的警告。之后df -h查看磁盘空间,返现mysql所在分区磁盘空间使用率已经100%。

解决思路:分析mysql数据文件发现,主要占用空间的为两张表。和同事沟通最进更新,发现磁盘空间占用最大的两张表中有存储图片文件的数据。

由于是线上服务,想着尽快处理问题,首先想到的方案是mysql数据目录整体迁移,后查资料发现难度较大。之后考虑只迁移两张占用空间较大表的数据文件。

系统环境:Linux centos7.3

步骤:

1、将 mysql 数据文件 /var/lib/mysql/***/test.ibd 文件找个目录较大空间进行拷贝过去。(mysql服务数据目录一般在 /var/lib/mysql目录下)

2、将新目录为mysql用户赋下权限,chown mysql:mysql     test.ibd  (mysql服务需要独立的用户组合用户运行,需要赋新目录权限。)

3、确认数据拷贝没问题的话将原数据文件删除

4、在新数据目录下创建软连接,指向原文件。 ln -s /newData/test.ibd  /var/lib/mysql/test.ibd

5、然后重启mysql服务。

之后数据服务恢复正常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值