MySQL 错误:“/var/lib/mysql 的分区太满!”df -h 显示相反的情况

MySQL 错误:“/var/lib/mysql 的分区太满!”df -h 显示相反的情况

我租用的服务器目前在使用 /etc/init.d/mysql start 尝试启动时提示 mysql 太满。但是使用 sudo /etc/init.d/mysql start 可以正常工作。

运行 df -h 显示没有完整分区

Filesystem      Size  Used Avail Use% Mounted on
rootfs           20G  1.5G   17G   9% /
/dev/root        20G  1.5G   17G   9% /
devtmpfs         32G  4.0K   32G   1% /dev
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            6.3G  752K  6.3G   1% /run
none            5.0M     0  5.0M   0% /run/lock
none             32G     0   32G   0% /run/shm
none            100M     0  100M   0% /run/user
/dev/md2        127G   11G  111G   9% /home

根据要求 df -i

Filesystem      Inodes  IUsed   IFree IUse% Mounted on
rootfs         1281120  45568 1235552    4% /
/dev/root      1281120  45568 1235552    4% /
devtmpfs       8242291   1516 8240775    1% /dev
none           8250649      2 8250647    1% /sys/fs/cgroup
none           8250649   1031 8249618    1% /run
none           8250649      1 8250648    1% /run/lock
none           8250649      1 8250648    1% /run/shm
none           8250649      2 8250647    1% /run/user
/dev/md2       8462336 990512 7471824   12% /home

我很困惑,因为 mysql 在正常重启时声称它已满,但是当我使用 sudo 重启它时,df -h 显示有足够的​​空间。

感谢您的帮助。

答案1

始终按照 控制服务root

虽然您可以以身份登录来root控制服务,但我们不建议这样做。

相反,使用以下任一方法:

sudo /etc/init.d/mysql restart

或者:

su -c "/etc/init.d/mysql restart"

前者要求登录用户在 内进行配置sudo。这需要成为某个组的成员 - 该组取决于发行版。优点是用户将使用自己的密码。

后者将涉及登录用户拥有root运行该命令的密码。

相关内容