Поддержка Проблемы и решения Проблема с базой данных

  • Доброго дня. С периодичностью меня выкидывает из админки сайта. При попытке заново зайти пишет:
    «Ошибка установки соединения с базой данных
    Это значит, что либо имя пользователя и пароль в файле wp-config.php неверны, либо нам не удалось связаться с сервером базы данных по адресу localhost. Возможно, сервер недоступен.

    Вы уверены, что указали правильное имя пользователя и пароль?
    Вы уверены, что ввели правильное имя сервера?
    Вы уверены, что сервер базы данных запущен?
    Если вы не знаете, что означают эти термины — возможно, стоит обратиться к хостинг-провайдеру. Если и после этого вам понадобится помощь — всегда можно посетить форум поддержки WordPress.»

    Сайт не мой, дали доступ что бы внесла правки

Просмотр 14 ответов — с 1 по 14 (всего 14)
  • prof01, привет.

    Ошибка установки соединения с базой данных

    А сам сервер БД в каком состоянии находится? База не повреждена? Какой хостинг?

    С периодичностью

    Скорее всего, дешевый/бесплатный хостинг с драконовскими ограничениями на количество соединений с mysql. Или просто глюкавый. Хотя может быть и под ддосом.

    Хостинг reg.ru
    Вот что мне ответил оператор»
    Периодически, процессы Apache и MySQL завершаются из-за нехватки оперативной памяти:
    KiB Mem : 524288 total, 0 free, 416292 used, 107996 buff/cache
    Для корректной и стабильной работы мы рекомендуем повысить тариф VPS»

    Что можно сделать в этом случае? повышать тариф не вариант.
    Спасибо за ответ

    Модератор Yui

    (@fierevere)

    ゆい

    512 Mb памяти тоже не вариант, тем более с apache

    повышать тариф не вариант.

    отказаться от использования MySQL и РНР.
    Писать сайты на чистом html+css+js

    Mem : 524288 total

    Этого катастрофически мало.

    повышать тариф не вариант.

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

    Хостинг reg.ru

    С ним связана куча проблем, обсуждаемых на этом форуме! Ваша — это +1
    reg.ru
    рег.ру

    Бегите оттуда!

    • Ответ изменён 4 месяца, 2 недели назад пользователем zoltsmaster. Причина: исправлена ссылка
    Модератор Yui

    (@fierevere)

    ゆい

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

    Юрий, можно, но для этого сисадмин должен очень серьезно «выложиться» по настройке вебстека и остального ПО на сервере.
    nginx, php+fpm, mysql.
    Но оно определенно того стоить не будет.

    @prof01 для того, чтобы достаточно беспроблемно работать с LAMP (Linux,Apache,MySQL,PHP) вам нужно от 2 Gb оперативной памяти. Даже с 1 Gb при пиках посещаемости у вас будут проблемы, имейте это ввиду.

    Так и передайте тем, чей это сервер.

    Yui, «не верю!» )) Первый же залетный краулер задосит сервер. Разве что очень аккуратненько сделать вечный кэш страничного уровня. Но это уже будет, как выше сказал коллега, фактически «на чистом html+css+js».

    Модератор Yui

    (@fierevere)

    ゆい

    не задосит, но очередь на исполнение запросов может вырасти вплоть до отдачи 502 (ограничение числа процессов php-fpm и потоков mysql не даст серверу уйти в OOM или даже сильно засвапиться, но процессов будет 2 и 2 треда MySQL, с этим не растанцуешься)
    Задача в целом интересная и нетривиальная, WooCommerce я бы там запускать не рискнула, а обычный сайтик, можно даже немного динамический (без вечного кеша), вполне влез бы.
    Еще если и дистрибутив использовать на основе musl или uClibc…

    Но это не для автора темы.
    Хотите комфорта и минимум проблем — 2 Gb

    WooCommerce я бы там запускать не рискнула

    И это правильно. Намедни на одном из подшефных магазинов админка упала по нехватке памяти. Стояло 512М. Выдал гиг. На вырост 🙂

    502 — это и есть DoS. Мягкий, но все таки. 😉

    Модератор Yui

    (@fierevere)

    ゆい

    502 — это и есть DoS

    если использовать nginx limit_req, то можно избежать и переполнения очереди backlog на исполнение запросов PHP, что в частности нивелирует проблемы от агрессивных краулеров, брютфорс админки и спам комментарии, так что речь пойдет о «мягком DDoS», когда подобные запросы начнут поступать из множественных источников и начнут забивать очередь так, что на нормальные запросы времени будет оставаться совсем ничего. Но главное то, что сервер не уйдет в завис и ООМ не станет убивать процессы mysqld/php-fpm.

    В принципе есть и вариант для апача. Настроить минимальное число рабочих форков, на фронт поставить nginx с отдачей статики, на proxy_pass отправлять только минимум.

    Модератор Yui

    (@fierevere)

    ゆい

    https://i.imgur.com/jf0LTPO.jpg
    в принципе вот, все достаточно статично вмещается в 300 Мб, остальное используется кешем, половина памяти свободна.

    WordPress новостной бложик, форум PhpBB, 1 Gb памяти всего, с апачем в свое время были реальные проблемы и сервер просто уходил в завис.

    конфигурация mysql:
    max_allowed_packet = 16M
    thread_cache_size = 2
    max_connections = 40
    query_cache_limit = 64K
    query_cache_size = 64M
    php:
    pm = dynamic
    pm.max_children = 8
    pm.start_servers = 4
    pm.min_spare_servers = 4
    pm.max_spare_servers = 4

    если бы памяти было 512М,то pm.max_children = 3 (и остальное тоже, pm = static)

    • Ответ изменён 4 месяца, 2 недели назад пользователем Yui.
Просмотр 14 ответов — с 1 по 14 (всего 14)