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

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

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

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

Просмотр 14 ответов — с 1 по 14 (всего 14)
  • anonymized-17844177

    (@anonymized-17844177)

    prof01, привет.

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

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

    Модератор Yuri

    (@yube)

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

    Скорее всего, дешевый/бесплатный хостинг с драконовскими ограничениями на количество соединений с 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

    Модератор Yuri

    (@yube)

    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 при пиках посещаемости у вас будут проблемы, имейте это ввиду.

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

    Модератор Yuri

    (@yube)

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

    Модератор Yui

    (@fierevere)

    永子

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

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

    Модератор Yuri

    (@yube)

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

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

    Модератор Yuri

    (@yube)

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

    Модератор Yui

    (@fierevere)

    永子

    502 — это и есть DoS

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

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

    Модератор Yui

    (@fierevere)

    永子

    View post on imgur.com


    в принципе вот, все достаточно статично вмещается в 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)
  • Тема «Проблема с базой данных» закрыта для новых ответов.