Акция!  Домен 34 грн, домен 55 грн, домен  - 65 грн, домен  - 99 грн, домен  - 425 грн!
Мы используем cookie-файлы
Для оптимизации работы нашего сайта мы используем cookie-файлы. Продолжая использовать сайт, Вы соглашаетесь с использованием cookie-файлов.
  • RUB
  • USD
  • EUR
  • UAH
Чат техподдержки
Вы являетесь клиентом?
  • +38(044) 392-74-33  Киев
  • +38(057) 728-39-00  Харьков
  • +38(056) 794-38-31  Днепр
  • +38(032) 229-58-93  Львов
  • +38(048) 738-57-70  Одесса
  • +38(093) 170-15-42  Life
  • +38(067) 400-88-44  Киевстар
  • +38(095) 630-90-82  MTC
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7(499) 348-28-61  Москва

VPS. Падает MySql на VPS

Форумы VPS Падает MySql на VPS
metalshop
1 год
хостинг: нет
домен: есть
Падает MySql на VPS
Здравствуйте!
На Debian 7.11 периодически падает MySql
Приходится запускать его в ISPmansger в инструмены/сервисы.
Не могу найти лог, в котором можно понять что происходит и почему.
Подскажите пожалуйста, что посмотреть, как проанализировать ситуацию.
Сергей М.
1 год
хостинг: нет
домен: есть
Лог mysql обычно находится в директории /var/log/( mysql | mariadb )
Чаще всего проблема с нехваткой ОЗУ и не оптимальными настройками mysql
metalshop
1 год
хостинг: нет
домен: есть
Лог mysql обычно находится в директории /var/log/( mysql | mariadb ) © Сергей М.

По этому пути ничего нет :(
Папка /var/log/mysql пуста
Сергей М.
1 год
хостинг: нет
домен: есть
Не факт что логирование включено, нужно смотреть файл конфигурации сервиса
Расположение файла лога можно поискать командой
# ps -faux | grep mysql
root      5264  0.0  0.0 112684   972 pts/0    S+   10:58   0:00          \_ grep --color=auto mysql
mysql    30561  0.0  0.0 113264  1532 ?        Ss   Май10   0:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
mysql    31302 39.4 33.7 4415180 2698604 ?     Sl   Май10 44334:08  \_ /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --open-files-limit=8192 --pid-file=/var/lib/mysql/web.dontsee.me.pid --port=3306

в выводе которой log-error=/var/log/mariadb/mariadb.log путь к файлу лога
metalshop
1 год
хостинг: нет
домен: есть
В конфиге раскомментарил несколько строк:

general_log_file = /var/log/mysql/mysql.log
general_log = 1

log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 2
log-queries-not-using-indexes

log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M

появилось куча логов.

А где можно почитать рекомендации по оптимизации настроек mysql?
Сергей М.
1 год
хостинг: нет
домен: есть
В сети достаточно много информации по настройке mysql, например: Настройка и оптимизация MySQL сервера / Хабр
rudenko
1 год
хостинг: нет
домен: есть
general_log_file = /var/log/mysql/mysql.log
general_log = 1
© metalshop

Этот параметр вам вряд ли нужен, так как записывает в лог все SQL запросы.


log_bin = /var/log/mysql/mysql-bin.log © metalshop

Бинарный лог тоже под вопросом - используется при репликациях и очень серьезных базах, где нужна возможность восстанавливать откатывать БД до опреедленной секунды, обычно пишется на отдельный диск для того, что б при падении БД можно было с точностью до секунды восстановить.

Я бы рекомендовал их отключить так как места на VPS не так много
conserabay
11 месяцев
хостинг: нет
домен: есть
Недостаточно настраивать только mysql. Нужно настроить еще и апач (httpd.conf") соответственно памяти сервера. Описывать почему не буду, кому интересно читайте документацию.

Настройте правильно MaxClients.
Для этого:
1 Узнайте сколько памяти "пожирает" один процесс
# ps -ylC httpd | awk '{x += $8;y += 1} END {print "Average Proccess Size (MB): "x/((y-1)*1024)}'


Пример для 1024 Мб: Для апача отдаем половину -512

Получаем следующие значения:

Average Proccess Size (MB): 21.5185


Получается, что в среднем один процесс Apache потребляет 21 МБ. Соответственно в отведенном объеме 512 МБ мы можем запустить 24 процесса. (512/21=24)

Исправим файл конфигурации под новое значение:

<IfModule mpm_prefork_module>
    StartServers          3
    MinSpareServers       3
    MaxSpareServers       9
    ServerLimit         256
    MaxClients           24
    MaxRequestsPerChild 3000
</IfModule>


Не 200 как там стоит по умолчанию. Остальные настройки как для памяти 1024.

После внесения изменений в файл конфигурации не забудьте перезагрузить Appache:

# service httpd restart


Должно помочь, если не поможет - добавить SWAP
metalshop
8 месяцев
хостинг: нет
домен: есть
Здравствуйте! Спасибо за помощь. Советы помогли, но частично. Всё равно стабильности не было, а недавно она пропала вовсе. Решил настроить VPS немного иначе.
Поскольку очень слабо разбираюсь в администрировании мне было проще начать всё с нуля, поэтому создал вторую VPS.
Старая: Debian 7.11, RAM: 6144 Мб, SSD: 70000 Мб, CPU: 2x2.8 Ghz, ISPmanager-Lite 4.4.10.30
Новая: Debian 9.1, RAM: 2048 Мб, SSD: 25000 Мб, CPU: 1x2.8 Ghz, ISPmanager Lite 5.189.0

Благодаря ISPmanager 5 удалось настроить веб-сервер в режиме FastCGI (Nginx + PHP-FPM) и перейти на PHP 7 (правда не для всех сайтов. один из-за старого движка остался на PHP 5.6). Сайтов всего 5 – 7 из которых ощутимую нагрузку могут давать только три. Работают они на CMS: ocStore 1.5.5.1.2, ocStore 2.3.0.2.3 и WordPress 5.1.1.

После переноса сайтов они заработали ощутимо быстрее, что подтвердили тесты в PageSpeed Insights. Но Mysql падает… :(
Например падал сегодня примерно в 9:50. Я его быстренько перезапустил через IPSmanager. Файл /var/log/mysql/error.log прикрепил.

Скрин "Ресурсы сервера" из ISPmanager тоже прикрепил.

Что ещё можно проверить или настроить? Проблема действительно в оперативной памяти? Можно заставить VPS стабильно работать с 2 гигами памяти или в любом случае лучше сменить тарифный план на 4 или 6 гигов?
Прикрепленные файлы:
Участвовать в общении на этом форуме могут только
зарегистрированные пользователи.

Если вы уже зарегистрированы Вам необходимо войти на форум.