Linux根分区空间不足的解决方法

前提:
安装使用Mysql的时候下载了很多相关的文件和压缩包在根目录下从而导致空间不足,从而导致登不上mysql(这时候mysql.sock文件是没有的,应该是没有空间)

一、如何查看是不是因为空间不足而导致的mysql无法登陆?

1、启动mysql时的报错信息是PID文件无法找到(就是与pid文件有关)
2、存放mysql的数据的目录里,sock文件无法找到(这个文件的路径是在mysql的配置文件里定义的)

[root@myp ~]# vim /mysql_data/mysql/3307/data/my.cnf 

3、查看磁盘剩余空间空间

[root@myp ~]# df -hl
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       8.5G  8.0G   90M  99% /
tmpfs           931M   76K  931M   1% /dev/shm
/dev/sda1       477M   78M  374M  18% /boot
/dev/sda2       8.5G   21M  8.1G   1% /home
/dev/sda5       181M  1.6M  170M   1% /mnt/disk1
/dev/sda6       181M  1.6M  170M   1% /mnt/disk2
/dev/sr0        3.7G  3.7G     0 100% /media/CentOS_6.9_Final

可以看到根目录下已经没有剩余空间了,而安装mysql的目录在/data/www/mysql在根目录下。而根目录下无剩余空间,就会导致mysql的数据文件无法写入从而无法启动。

二、解决方法

1、删除掉根目录下无用的大文件

[root@myp ~]# find / -size +100M

查看根目录下文件大小大于100M的文件。

2、添加一块新的硬盘,并且将mysql的数据文件挂载在新的硬盘上
Linux根分区空间不足的解决方法_第1张图片
然后运行虚拟机。

3、对新增硬盘进行操作
查看新增硬盘

fdisk -l 

为新增硬盘分区

[root@myp ~]# fdisk /dev/sdb

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): 

n —>p(主分区) –>1 –>(enter ,默认) –>(分区大小,+3G) –>w(保存退出)

格式化新分区

[root@myp ~]# mkfs –t ext4 /dev/sdb1

4、新建一个目录,并将挂载

[root@myp ~]#mkdir –p /mysql_data
[root@myp ~]# mount /dev/sdb1 /mysqld_data

查看挂载信息

[root@myp ~]# df -TH

5、写入分区表

[root@myp ~]#  vim /etc/fstab

6、将相关文件移动到新建目录

[root@myp ~]# mv /data/mysql /mysql_data

7、重新启动mysql ,就可正常启动。

你可能感兴趣的:(Linux根分区空间不足的解决方法)