При возникновении проблемы прежде всего следует обнаружить ее источник - программу или элемент оборудования:
-
Если присутствует один из следующих симптомов, то проблема, скорее всего, связана с аппаратным обеспечением (с памятью, материнской платой, процессором или жестким диском) либо с ядром:
Не работает клавиатура. Обычно ее работоспособность можно проверить по реакции на нажатие
Caps Lock
. Если индикаторCaps Lock
не меняется, то клавиатуру необходимо заменить (прежде чем это сделать, следует попробовать перезагрузить компьютер и проверить все кабели к клавиатуре).Не перемещается курсор мыши.
Машина не отвечает на ping-запросы удаленной машины.
Различные не связанные между собой программы не работают, как надо.
Система неожиданно перезагрузилась (дефектная программа пользовательского уровня никогда не должна быть способна вызвать отказ системы).
В этом случае необходимо начать с проверки всех кабелей и запуска диагностических средств для проверки аппаратуры! Следует также проверить, нет ли патчей, обновлений, сервисных пакетов (
service pack
) для используемой операционной системы, при помощи которых вы, возможно, могли бы решить проблемы. Кроме того, следует удостовериться, что у вас установлены достаточно свежие версии библиотек (таких какglibc
).Для раннего обнаружения проблем хорошо использовать машину с ECC-памятью!
В случае блокировки клавиатуры положение можно исправить, если войти на свою машину с другой машины и выполнить на своей машине
kbd_mode
-a.Исследуйте свой системный журнальный файл (
/var/log/messages
или т.п.) на предмет причин возникающих проблем. Если есть основания полагать, что проблема - в MySQL, то следует также изучить журнальные файлы MySQL (see Раздел 4.9.3, «Журнал обновлений (update)»).Если вы считаете, что аппаратные проблемы отсутствуют, следует попробовать обнаружить вызывающую проблемы программу. Попробуйте с помощью
top
,ps
,taskmanager
или подобной программы проверить, какая программа забирает все ресурсы процессора или блокирует машину.Проверьте с помощью
top
,df
или подобной программы, нет ли нехватки памяти, дискового пространства, дескрипторов для открытия файлов или каких-либо других критических ресурсов.Если проблема связана с бесконтрольным процессом, то всегда можно попробовать уничтожить его. Если он не хочет уничтожаться, то, вероятно, существует ошибка в операционной системе.
Если после изучения всех возможных причин вы сделали вывод, что источником проблемы является именно MySQL-сервер или клиент, то следует сделать отчет об ошибке для нашего списка рассылки или команды поддержки. В отчете об ошибке постарайтесь дать очень подробное описание поведения системы и свое мнение по поводу происходящего. Следует также объяснить, почему вы считаете, что проблемы вызывает именно MySQL. Примите во внимание все ситуации, описанные в данном разделе. Опишите все проблемы в точности так, как они наблюдаются при исследовании системы. При помещении в отчет для всего вывода программ и/или их сообщений об ошибках и/или подобной информации из журнальных файлов используйте метод "вырезать и вставить"!
Просьба детально описать, какая именно программа не работает, и какие симптомы вы наблюдали! Нам доводилось получать много отчетов об ошибках, где просто утверждалось, что "система не работает", - такие отчеты не давали никакой информации о характере возможной проблемы.
Если программа сбоит, то всегда полезно выяснить:
Не вызвала ли данная программа ошибки сегментации (
core dump
)?Не забирает ли программа все ресурсы процессора? Проверьте с помощью
top
. Дайте программе немного поработать - возможно, она занимается сложными вычислениями.Если проблемы вызваны именно сервером
mysqld
, то можно ли выполнитьmysqladmin -u root ping
илиmysqladmin -u root processlist
?Что сообщает клиентская программа (попробуйте поработать, например, с
mysql
) при попытке соединиться с MySQL? Происходит ли заклинивание клиента? Выдает ли программа какой-нибудь вывод?
При посылке отчета об ошибке необходимо придерживаться схемы, описанной в этом руководстве (see Раздел 1.8.1.2, «Как задавать вопросы и направлять сообщения об ошибках»).