Изучив файл ошибок MySQL, я обнаружил ошибку, касающуюся дискового пространства. Теперь я думаю, что причина сбоя MySQL:
[root@xxxx ~]# cat /var/lib/mysql/xxxx.com.err
120528 17:45:05 [Note] Crash recovery finished.
/usr/sbin/mysqld: Disk is full writing './mysql-bin.~rec~' (Errcode: 28). Waiting for someone to free space... (Expect up to 60 secs delay for server to continue after freeing disk space)
Может ли это быть причиной сбоев?
Да, дисковое пространство может вызвать сбой системы. Это опасная ситуация, которой следует избегать. Процессам может не хватать места, файлы журналов могут заполняться и т. Д. Некоторые приложения и демоны (например, MySQL) будут останавливаться или давать сбой, если им не хватает места на диске.
В вашем случае кажется, что в вашей системе нет разделов. Вы должны предоставить вывод df -h
начать...
Оттуда вы можете захотеть увидеть, какие каталоги занимают наибольшее количество места:
du -skh /*
должен обеспечивать учет того, какие каталоги верхнего уровня являются самыми большими. Я предпочитаю утилита ncdu для этого, но вы не можете ожидать, что это будет установлено в большинстве систем.
С участием du -skh /*
, вы получите следующий результат:
[root@xx /]# du -skh /*
8.4M /bin
37M /boot
124K /dev
110M /etc
192K /home
.
.
.
5.8G /usr
3.7G /var
41G /yum
Если вы хотите углубиться в /var
, например, cd /var
и беги du -skh *
и ищите крупнейших потребителей космоса ... Но, конечно, процесс открытия этого места неоднократно освещался на этом сайте. Проверьте эти связанные вопросы, чтобы получить дополнительные предложения:
Как узнать, какие файлы занимают 80% места на веб-сервере Linux?
Как узнать, что занимает все место на моем разделе /?
Программное обеспечение для создания карты использования диска для Linux без компьютера
Это определенно место для начала. Попробуйте найти то, что наполняет ваш /
разделите и удалите некоторые файлы и посмотрите, что произойдет
find / -xdev -maxdepth 1 -exec du -sh {} \;
поможет вам узнать, какое дерево каталогов заполняет диск.
Да, согласно вашему журналу ошибок MySQL, это причина сбоя. Вы можете очистить файлы журнала, чтобы освободить место, или переместить каталог данных MySQL в какой-то другой каталог.
Код ошибки 28 означает «На устройстве не осталось места».