Как определить, почему MySQL внезапно останавливается на Ubuntu

Как определить, почему MySQL перестает работать?

Недавно я обновил сервер Ubuntu до версии 16.04, и теперь MySQL внезапно останавливается через несколько часов. Он действует как бэкэнд для установки Wordpress. Моя версия MySQL сейчас:

mysql  Ver 14.14 Distrib 5.5.54, for debian-linux-gnu (x86_64) using readline 6.3

Проверка who -b показывает, что сервер не перезагружался в течение нескольких дней, так что это не проблема, если MySQL не запускается должным образом.

Журнал ] /var/log/mysql/error.log пуст, как и все заархивированные.

Журнал /var/log/syslog.log не показывает ничего необычного или ссылающегося на mysql.

У меня установлен пакет unattended-upgradedes для автоматической установки обновлений безопасности, и журнал /var/log/unattended-upgrades/unattended-upgrades.log показывает:

2017-03-22 07:00:32,459 INFO Packages that will be upgraded: libc-bin libc-dev-bin libc6 libc6-dev locales multiarch-support
2017-03-22 07:00:32,459 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg.log'
2017-03-22 07:00:38,595 INFO All upgrades installed
2017-03-22 07:00:39,846 ERROR No '/usr/bin/mail' or '/usr/sbin/sendmail',can not send mail. You probably want to install the 'mailx' package.
2017-03-22 07:00:39,846 WARNING Found /var/run/reboot-required, rebooting

указывает, что он установил некоторые обновления и запланировал перезагрузку, но еще не перезагрузился.

Как мне окончательно узнать, что привело к остановке или сбою MySQL?

0
задан 22 March 2017 в 15:37
3 ответа

Попробуйте найти что-нибудь, что может убить mysqld. Проверьте это сообщение в блоге о том, какие инструменты использовать. Auditctl сработал в одном случае, в котором я участвовал. https://www.percona.com/blog/2015/03/06/stopped-mysql-tracing-back-signals-sent-mysql/

0
ответ дан 5 December 2019 в 08:23

Он может быть остановлен из-за OOM (вне киллера памяти). Короче говоря: когда память, включая подкачку, почти полностью заполнена, ядро Linux может убить некоторые требовательные процессы, чтобы снизить нагрузку на память.

Сообщает ли dmesg | grep -i oom что-нибудь?

.
0
ответ дан 5 December 2019 в 08:23

Во-первых, я бы включил ведение журнала, поскольку ваш журнал ошибок mysql пуст: https://dev.mysql.com/doc/refman/8.0/en/error-log.html

Добавьте это:

/etc/my.cnf  # most common location

log-error=/var/log/mysqld.log

Кроме того, я бы не разрешал внешние подключения к порту 3306. Если вам нужно удаленный доступ к MySQL, вместо этого используйте туннель SSH.

0
ответ дан 11 April 2020 в 20:40

Теги

Похожие вопросы