Итак, около недели назад я наконец понял, что заставляло мой сервер постоянно падать.
После просмотра моего mysqld.log я продолжаю видеть ту же ошибку,
101210 5:04:32 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
Вот ссылка на отчет об ошибке, http://bugs.mysql.com/bug.php?id=35346 кто-то порекомендовал вам установить значение max_join_size в my.cnf на 4M, и я это сделал. Я предполагал, что это устранило проблему, и до сегодняшнего дня он работал около недели без проблем ...
Я проверил MySQL, и теперь та же ошибка вернулась,
101216 06:35:25 mysqld restarted
101216 6:38:15 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
101216 6:38:15 [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted to 4294967295
101216 06:40:42 mysqld ended
Кто-нибудь знает, как я могу решить эту проблему? У меня не может продолжаться такой сбой mysql.
РЕДАКТИРОВАТЬ: я забыл упомянуть каждый раз, когда это происходит, я получаю электронное письмо от линода, остающегося у меня высокая скорость io диска
Ваш Linode превысил порог уведомления (1000) для скорости дискового ввода-вывода, составив в среднем 2483,68 за последние 2 часа.
Чтобы linode отправил вам электронное письмо о превышении порога ввода-вывода в течение более двух часов, я бы подумал, что что-то вызывает тяжелый дисковый ввод-вывод. У вас мало памяти или что-нибудь в этом роде в процессе? Часто в системах VPS, таких как Linode, высокий дисковый ввод-вывод происходит из-за нехватки памяти и подкачки. Может быть вызван OOMkiller, который убивает mysql. В dmesg есть упоминания об oomkiller?
Когда вы говорите, что сервер падает - что именно вы имеете в виду?
Вы имеете в виду, что система перезагружается или зависает (перестает отвечать, и ее необходимо перезагрузить / выключить)?
Или вы имеете в виду только то, что MySQL дает сбой - если это так, значит ли вы, что процессы MySQL не запущены или все процессы MySQL не отвечают на запросы?
При этом что-нибудь отображается на системной консоли?
Я думаю, что предупреждения MySQL не имеют ничего общего с проблемой - я прочитал отчет об ошибке, который вы перечислили, так как это не то, что вызывает сбой MySQL, а только сбой системы.
Предупреждение - это просто предупреждение. Я не думаю, что это твоя проблема. Попробуй увеличить логирование mysql. Возможно ли, что при достижении пороговых значений ввода-вывода Linode начинает отклонять ваши запросы ввода-вывода, и это вызывает сбой или завершение работы mysql?