Недавно я перешел с MySQL на MariaDB на размещение веб-сайта WP. Все прошло гладко, и я даже заметил увеличение скорости (что могло быть просто плацебо;). С тех пор MariaDB начала умирать регулярно каждые две недели.
Когда я возвращаюсь на сервер, вот что у меня есть:
user@myserver:~# service mysql status
MariaDB is stopped.
Но когда я захожу в журналы, они пусты. Понятия не имею, как это отладить. Любой намек на то, как отследить, как и почему умирает MariaDB, мне очень поможет!
Возможно, вашему серверу не хватает памяти, и OOM-убийца убивает процесс MariaDB.
Чтобы проверить, не является ли он убийцей OOM, сделайте следующее:
grep -i oom /var/log/messages
и grep -i oom /var/log/syslog
dmesg | grep -o oom
после обнаружения сбоя / остановки MariaDB.Если grep
найти что-нибудь, скорее всего, OOM-убийца убивает процесс вашей базы данных.
ОБНОВИТЬ: судя по расследованию Ральфа, кажется, что процесс нарушения /usr/lib/php/sessionclean
. Посмотреть отчет об ошибке Вот
Благодаря @shodanshok я нашел проблему. Отслеживая / var / log / syslog вокруг сбоя, я регулярно обнаруживал это до сбоя:
Apr 30 22:09:01 servername CRON[3818]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && /usr/lib/php/sessionclean)
Apr 30 22:09:01 servername CRON[3819]: (root) CMD ( [ -x /usr/lib/php5/sessionclean ] && /usr/lib/php5/sessionclean)
Оказывается, это известная проблема: очистка сеанса cron требует много ресурсов и убивает MySQL / MariaDB. Больше информации здесь: https://bugs.launchpad.net/ubuntu/+source/php5/+bug/1356113