2013-10-10 7 views
0

Сегодня утром я заметил, что мой сервер mysql не работает. Посмотрите на журналы, и я нашел информацию ниже. Хотя беспокоит, что служба mysqld исчерпала память и была убита, более тревожно, что mysql не может перезагрузиться.mysql оканчивается статусом 1?

Любые идеи о том, почему mysql не мог возникнуть? Как я могу проверить, чтобы убедиться, что если процесс будет убит, он будет обновляться?

спасибо.

387 Oct 10 06:37:09 ip-xxx-xxx-xxx-xxx kernel: [12218775.475042] Out of memory: Kill process 810 (mysqld) score 232 or sacrifice child 
388 Oct 10 06:37:09 ip-xxx-xxx-xxx-xxx kernel: [12218775.475060] Killed process 810 (mysqld) total-vm:888108kB, anon-rss:139816kB, file-rss:0kB 
389 Oct 10 06:37:09 ip-xxx-xxx-xxx-xxx kernel: [12218775.655663] init: mysql main process (810) killed by KILL signal 
390 Oct 10 06:37:09 ip-xxx-xxx-xxx-xxx kernel: [12218775.655745] init: mysql main process ended, respawning 
391 Oct 10 06:37:10 ip-xxx-xxx-xxx-xxx kernel: [12218776.044805] type=1400 audit(1381408630.181:13): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=27754 comm="apparmor_parser" 
392 Oct 10 06:37:10 ip-xxx-xxx-xxx-xxx kernel: [12218776.676434] init: mysql main process (27763) terminated with status 1 
393 Oct 10 06:37:10 ip-xxx-xxx-xxx-xxx kernel: [12218776.676489] init: mysql main process ended, respawning 
394 Oct 10 06:37:11 ip-xxx-xxx-xxx-xxx kernel: [12218777.468923] init: mysql post-start process (27764) terminated with status 1 
395 Oct 10 06:37:11 ip-xxx-xxx-xxx-xxx kernel: [12218777.512363] type=1400 audit(1381408631.649:14): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=27800 comm="apparmor_parser" 
396 Oct 10 06:37:11 ip-xxx-xxx-xxx-xxx kernel: [12218777.681433] init: mysql main process (27804) terminated with status 1 
397 Oct 10 06:37:11 ip-xxx-xxx-xxx-xxx kernel: [12218777.681491] init: mysql respawning too fast, stopped 

ответ

2

Я бы попробуйте запустить mysqld непосредственно в команде, и, глядя на выходе. Это может быть, например, InnoDB corruption leading to stopping immediately after spawning, в этот момент upstart может попробовать респаун до тех пор, пока apparmour не остановит его.

0

Старый вопрос, но повторяющийся вопрос. Вопрос имеет две грани:

  • Во-первых, почему в процессе mysql заканчивается память?
  • Во-вторых, почему процесс mysql не может начаться снова?

Первый - это что-то, что касается перенапряжения в конфигурации. Конфигурация избыточного буфера может заставить mysql запрашивать больше памяти, чем может предоставить система. Подтвердите this question, чтобы получить представление о том, как найти наиболее подходящий для вашей среды.

Вторая проблема может быть очень сложной. Существует множество возможностей для проблем, которые могут помешать запуску mysql. Следующие шаги могут быть выполнены, чтобы выяснить, в чем причина. Первый ключ можно найти в файле ошибок журнала mysql, в большинстве случаев найденном в /var/log/mysql/error.log Однако, независимо от характера проблемы, файл журнала ошибок может быть пустым. В этом случае попробуйте:

  1. взгляд в системный журнал: в терминале

    type tail -f /var/log/syslog 
    

    и в другом терминале попытке запустить MySQL:

    service start mysql 
    

Если этот подход не прибегайте к какой-либо полезной подсказке:

  1. Запуск туздЫ из сырого в расширенном режиме:

    su mysql 
    mysqld -v 
    

как показал here.

Выходные сообщения могут быть полезны для выяснения основной причины, которая предотвращает запуск mysql.