Error establishing a database connection: частая ошибка новичков и головная боль хостера, разбираемся в проблеме

Ой сайт не работает, лишь какая–то не понятная надпись, ведь говорили мне обратись к специалисту, а я не послушал(а). Сколько раз такая мысль приходит к вам в голову? Частая ошибка, которую делают новички, это error establishing a database connection, или проще говоря нарушают связь файлов и базы данных.

что делать, как исправить, что это значит на русский язык, после бэкапа, на локальном сервере, ошибка, с английского, исправление, устранить, проблема, сервер, fix

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

Перевод на русский язык Error establishing a database connection и почему она возникает

Если перевести фразу с английского на русский язык, то получим текст – Ошибка установки соединения с базой данных. Думаю из перевода понятно, что ядро WordPress не может установить связь с базой данных из–за сбоя или в результате действий администратора. Что означает и чему причина появление данной проблемы:

  • Открыли файл wp-config.php, нарушили комбинацию логина и пароля подключения. Самая распространенная ошибка, новички любят смотреть и менять файлы движка
  • Установка нового плагина. Обычно относится к тем, которые меняют текстовую часть сайта — записи, комментарии, то есть элементы содержащиеся в базе данных MySQL
  • Работы на сервере, редко, но могут выявить ошибку Error establishing a database connection. В основном это аварийные изменения
  • Переход на другой хостинг. Специалисты хостинга при переносе не проверили работу сайта и отдали вам не работающий ресурс. Проблема редкая, но имеет место, потому существует человеческий фактор
  • Много посетителей или DDoS атака. Каждый хостинг заботится о клиентах, предупреждает такие ситуации, но если наплыв большой, то сервер может упасть
  • Разрыв связи после бэкапа, ошибка возникающая из-за выбора не правильного времени восстановления файлов и DB. Есть универсальный метод, описанный далее

Проверка синхронизации базы данных и CMS в wp-config

Необходимо посмотреть правильность данных для синхронизации файлов CMS WordPress и базы данных. Разберем на примере хостинга Beget. Подключимся к сайту с помощью FTP, как это делать есть в статье про установку темы.

Вошли в корневую папку сайта там где каталоги wp-admin и wp-content. Ищем файл wp-config.php, открываем его с помощью правой кнопки мыши, выбираем Просмотр/Правка.

Инструмент правки в файлзилле
Просмотр/Правка wp-config

Откроется программа для редактирования документов. Запомним несколько строк, а именно:

подключение DB в документе конфигурации
Строки в wp-config
  1. DB_NAME имя базы в нашем случае valent5k_wp3
  2. DB_USER пользователь, так же valent5k_wp3
  3. DB_PASSWORD пароль от подключения
  4. DB_HOST адрес сервера или хоста, по умолчанию localhost, но бывает и другие значения

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

Сверяем данные
Запоминаем данные

Если эти три параметра совпадают с прописанными из wp–config, то двигаемся дальше, если нет то перезаписываем, в wp-config, на то что указано в панели Бегета. Теперь нажимаем на значок с двумя точками.

Кнопка чтобы задать новый пароль
Смена пароля

Вписываем пароль из wp-config в поле DB_PASSWORD, у нас juzPo7HP6 и нажимаем Изменить.

Задаем новый пароль
Изменение пароля БД

Теперь смотрим на сайт и смотрим все ли работает. План действий такой:

  • Открываем wp-config
  • Копируем конфигурацию подключения
  • Сверяем или обновляем доступы к базе данных на хостинге

Такая схема работает и с нарушениями на локальном сервере типа Open server, XAMPP, Laragon и им подобные. Для более наглядного представления процесса записал свое видео.

Запуск восстановления

Существует аварийный запуск (fix) восстановления контакта SQL и файлов стандартными средствами WordPress . По знакомой схеме открываем файл wp-config, в конец вставляем код.

define('WP_ALLOW_REPAIR', true);
Куда прописывать вызов восcтановления DB
Код восстановления WP

Не забываем сохранять изменения и закачивать обратно на хостинг через FileZilla.

Переходим по адресу site.ru/wp-admin/maint/repair.php где взамен site.ru доменное имя. Откроется страница на которой нажимаем Починить поврежденную базу данных.

Нажимаем починить
Кнопка Починить

Начнется процесс, если он удачно закончился и error establishing a database connection пропала, то появится страница с успешными восстановленными таблицами, и с предупреждениями, что нужно удалить код вносимый ранее для запуска восстановления.

Обработка и восстановление database
Результат работы

Обязательно удалите строчку, сохраните и перезапишите файл wp-config, иначе любой хакер получает полный доступ к файлам ядра WordPress.

Что делать после восстановления – сравнение префиксов

Сравнение префиксов таблиц необходимо делать, чтобы перейти к следующему шагу расследования ошибки error establishing a database connection. Заходим в FileZilla опять в файл wp-config, и смотрим на строчку table_prefix.

Префикс баз в WP
Префикс в вордпрессе

Запоминаем и идем в PhpMyAdmin на хостинге, как туда заходить уже знаем. В списке баз находим соответствующую сайту, нажимаем значок для перехода в MySQL.

Загрузка панели PhpMyAdmin
Переход в PhpMyAdmin

Далее смотрим на префиксы таблиц, если они совпадают, то проблема не в этом идем дальше.

Проверка
Префикс в SQL

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

Как исправить через восстановление MySQL

В 90% случаев исправить SQL не даст результата, но попробовать стоит. Заходим в PHPMyAdmin. Отмечаем чекбоксы напротив всех таблиц, внизу выбираем из выпадающего списка Восстановить таблицу.

Восстановление БД
Восстановление DB через интерфейс MySQL

Начнется процесс восстановления, способ может помочь, но в далеко не всех случаях, ищите проблему в других местах.

Появление error establishing a database connection после установки плагинов

Если блог на WordPress заклинило после установки плагина и появилась надпись error establishing a database connection, то нужно удалить его, но как если войти в админку нет возможности? Ответ прост, идем в FileZilla и удаляем. Путь до папки с плагинами wp-content > plugins.

Расположение плагинов в ядре WP
Папка с плагинами

Находим, дающий ошибки плагин, и переименовываем. Если не знаем какой, то изменяем название по одному, смотрим на работоспособность сайта, обязательно обновляем Ctrl+F5.

Backup файлов и базы данных

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

Единственный минус, что все изменения внесенные после даты восстановления сотрутся и придется проделывать действия заново. Заходим в BackUp в панели хостинга.

BackUp на хостинге
Раздел бэкапа

Сначала переходим в файловый архив, отмечаем папку сайта и выбираем дату когда он работал нормально и нажимаем синюю стрелочку.

Загрузка старой версии
восстановление файлов WP

Переходим в раздел Базы данных, отмечаем соответствующую сайту, так же выбираем дату и жмем синюю стрелочку.

BackUp БД
Бекап БД

По окончании процессов, сайт должен заработать, если нет, то переходим к следующему крайнему методу.

Как устранить если ничего не помогло

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

На крайний случай обратитесь к нам за помощью, что будет в наших силах сделаем. Я разобрал максимум решений ошибки Error establishing a database connection и решений, если есть дополнения, то жду в комментарии. Успехов.

Пожалуйста, оцените материал:

Давно занимаюсь и разрабатываю сайты на Wordpress. Считаю что лучшего решения для ведения бизнеса не найти, поэтому считаю долгом делиться информацией с остальными.
Получай полезные материалы удобным способом!
Комментарии:
  1. Не помогает! Возможно проблемы или работы на хостинге ведутся, тогда тоже может данная ошибка возникнуть!

  2. У меня была подобная ошибка. Мучался постоянно! Приходилось перезагружать сервер даже. В итоге оказалось, что возникает она из-за недостатка свободного места на диске (бэкапы слишком часто создавались и занимали все свободное место). Так что проверяйте и этот вариант, если с базами данным все в порядке, а ошибка осталась.

  3. Здравствуйте, огромное спасибо за статью.
    Думал придется заново делать.

Добавить комментарий

×
-15%
на премиум-тему
Bono

Создай магазин мечты
на WordPress!

Купить со скидкой »