Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Администрирование dedicated серверов, VPS/VDS, shared хостингов, IaaS, PaaS.
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2020, 15:14   #1
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию На сервере VPS падает service mysqld

Здравствуйте.

На виртуальном сервере где расположен рабочий сайт, иногда падает служба базы данных (service mysqld).

Симптомы:
- при обращении из php скриптов сайта, в логах ошибок начинается
Код:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
- в терминале при вызове
Код:
service mysqld status
во время проблемы появляется
Код:
mysqld dead but subsys locked
При выполнении перезапуска службы из терминала - база восстанавливается и сайт работает нормально, до следующего падения базы.
Эта проблема уже давно, если не с самого начала.
В php прописано условие, если нет соединения с базой - выводить заглушку с информацией (контакты компании) и "на сайте произошла ошибка".

Недавно сделал следующий костыль - sh-скрипт на кроне каждые пять минут, проверяется наличие файла, который создаётся при выводе заглушки. Если файл есть - выполнить перезапуск службы и удалить файл.

И это не работает, база всё равно лежит с теми же симптомами (при заходе на сайт вновь создаётся файл для костыля).
Работает только ручной перезапуск из терминала. С чем это связано - мне не понятно.

Что вы можете подсказать, куда смотреть где искать проблему ?
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 27.06.2020, 15:51   #2
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,758
По умолчанию

Оперативной памяти докинуть, ядер должно быть не менее двух для линуксовых серверов. лучше четыре.

Еще сервер с VPS может сам по себе быть перегруженным.

Еще там может быть админ не угомонный, который делает какие-то работы, переносы, которые впоследствии влияет на все VPS на сервере.

Любые костыли не вариант, любые крашевые ситуации очень опасны для целостности базы.
Alar вне форума Ответить с цитированием
Старый 27.06.2020, 20:34   #3
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Alar Посмотреть сообщение
делает какие-то работы, переносы, которые впоследствии влияет на все VPS на сервере
Обычные штатные работы, на другом сервере нагрузки посерьёзнее будут, база не падает

Цитата:
Сообщение от Alar Посмотреть сообщение
любые крашевые ситуации очень опасны для целостности базы
На этот случай провайдер делает еженедельные бекапы, и я тоже раз в месяц делаю бекапы базы.
И, ещё ни разу из-за этого косяка не возникало проблем с целостностью данных после восстановления службы. Но это всё отступление.

Мне бы причину понять ...
Два ядра
768 мегабайт ОЗУ, из которых на мониторе занято максимум 400 - это пиковые нагрузки на сайт, и тогда база не падала.

Пока я не вижу закономерностей и каких-то зашкаливаний, но иногда база падает.
Было такое что каждый день в 7-9 часов утра, это было на прошлой неделе, с понедельника по четверг.
Потом я сделал свой костыль, и до сегодня было всё нормально.
Сегодня утром говорят сайт не работает, я выяснил что не выполняется перезапуск службы (как задумано костылём).

И вот, пришёл сюда
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 27.06.2020, 20:41   #4
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,758
По умолчанию

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
Обычные штатные работы
На нормальном сервере никаких работ не должно быть вообще.

Цитата:
768 мегабайт ОЗУ
Почему такая цифра? минимум хотя бы 1GB, 2GB, и это если сайт не нагруженный вообще. или группа не нагруженных сайтов, где 3 онлайнера это уже круто )

Кроме всего это должен быть гарантированный 1 GB. а не в панели написано, а по факту иногда бывает меньше, потому что кто-то при штатных работах, влезает в ресурсы VPS ))

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
Пока я не вижу закономерностей
А я вижу, и даже сообщением выше ответил, а в этом повторил.


Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
аждый день в 7-9 часов утра
И даже после такого закономерности не увидели? )

Цитата:
говорят сайт не работает
У тех кто говорит откуда терпение? неужели у них нет 30 евро в месяц, а то и меньше, на старый добрый физический сервер? VPS всё равно не сильно дешевле.
Alar вне форума Ответить с цитированием
Старый 27.06.2020, 21:03   #5
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Alar Посмотреть сообщение
VPS всё равно не сильно дешевле
Опять в дебри. На другом моём VPS постоянные работы, аптайм 99 %, загрузка одного из трёх ядер не проседает ниже 80 %, и сервер за два бакса в месяц. Вопрос не в стоимости.
Этот сервер пять баксов в месяц.

Цитата:
Сообщение от Alar Посмотреть сообщение
На нормальном сервере никаких работ не должно быть вообще.
Под штатными работами я имею ввиду работу на сайте. В терминал лезу только что бы иногда перезапустить упавшую службу базы данных.

Цитата:
Сообщение от Alar Посмотреть сообщение
Почему такая цифра?
Такой тариф у провайдера
Цитата:
Сообщение от Alar Посмотреть сообщение
кто-то при штатных работах, влезает в ресурсы VPS
Ну да, работая на сайте я так или иначе влезаю в ресурсы сервера. Масло-масляное =)

Сейчас колдую над автомонтированием свопа. Это конечно не то что нужно в конечном итоге, но это можно сделать вотпрямщас
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 27.06.2020, 21:38   #6
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
иногда падает служба базы данных (service mysqld)
А что в логах?
waleri вне форума Ответить с цитированием
Старый 27.06.2020, 21:48   #7
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
А что в логах?
Лог веб-сервера
Код:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
Статус службы
Код:
mysqld dead but subsys locked
Где может смотреть лог службы ?
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 28.06.2020, 02:09   #8
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
mysqld dead but subsys locked
Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
не выполняется перезапуск службы (как задумано костылём).
Потому и не перезапускается, что subsys остался заблокирован при падении.
Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
Где может смотреть лог службы ?
Расположение логов можно посмотреть в my.cnf. Более подробная информация здесь. Попробуйте посмотреть лог ошибок.
Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
768 мегабайт ОЗУ
Маловато будет... Если проект учебный или совсем простой или с низкой посещаемостью, может быть подобный VPS и подойдёт.Что-то более серьёзное (даже из личного опыта) такой VPS будет "давить" нехваткой памяти.
Streletz вне форума Ответить с цитированием
Старый 28.06.2020, 03:22   #9
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от Streletz Посмотреть сообщение
такой VPS будет "давить" нехваткой памяти
Посещаемость не шибко высокая, но VPS справляется, за исключением иногда падения базы. Сейчас сделал своп на гигабайт, посмотрим чё будет.

Цитата:
Сообщение от Streletz Посмотреть сообщение
Потому и не перезапускается, что subsys остался заблокирован при падении
При попытке выполнить service mysqld restart автоматически из скрипта sh - не перезапускается
Но ручное выполнение идентичной команды в терминале - спасает
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 28.06.2020, 03:49   #10
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
VPS справляется, за исключением иногда падения базы.
Справляется - это когда всё работает и ничего не падает. Тем более при низкой посещаемости.

На всякий случай лучше всё-таки посмотреть логи по ошибкам и медленным запросам. Может оказаться, что проблема даже не в сервере, а в работе самого сайта. Не исключено, что в коде есть что-то, что создаёт большую нагрузку на базу. И в этом случае даже добавление RAM в корне ситуацию не изменит.
Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
Сейчас сделал своп на гигабайт, посмотрим чё будет.
В лучшем случае (ИМХО), это отодвинет решение истинной проблемы на неопределённое время. Тем более скорость доступа к данным из RAM и файла подкачки, насколько я помню, отличается.
Streletz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[mysqld] ft_min_word_len=3 - изменение минимальной длины слова в поиске MySQL Alar SQL, базы данных 2 13.09.2020 05:21
Azure Service Fabric: не запускается local Service Fabric Cluster Glen Общие вопросы .NET 0 30.05.2016 20:01
Azure Service Fabric: не запускается Microsoft Service Fabric Host Service Glen Общие вопросы .NET 0 28.05.2016 22:00
Падает VS ZoxWatt Windows 0 05.12.2012 20:55
OpenProcessToken для процессов LOCAL SERVICE и NETWORK SERVICE M.A.R.K Win Api 12 04.05.2008 09:51