Как исправить ошибку «Error establishing a database connection» в WordPress

Это сообщение об ошибке выглядит довольно серьезно.

Во-первых, перестаньте паниковать!

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

Содержание

Понимание проблемы

WordPress использует две основные технологии: PHP и MySQL.

  • PHP – это язык программирования. Файлы ядра WordPress написаны на нем.
  • MySQL – это система управления базами данных (СУБД). WordPress использует базу данных MySQL для хранения содержимого сайта: записи, страницы, а заголовок сайта, макет виджетов и т. д.

Рассматриваемая в этой статье ошибка возникает, когда WordPress не может получить доступ к информации в базе данных с помощью команд PHP. Когда это происходит, WordPress выводит сообщение «Ошибка при установлении соединения с базой данных».

Несколько причин, из-за которых возникает эта ошибка:

  • Неверные учетные данные для входа. Если пароль и изменились, WordPress не сможет получать информацию из базы данных.
  • Поврежденные файлы WordPress. Это может возникать при обновлении плагинов, темы оформления и самого WordPress.
  • Поврежденная база данных. Например, если вредоносный плагин повредил базу данных изнутри. А также вследствие хакерской атаки, сбоем в теме и т.д.
  • Сервер базы данных не работает.
  • Большой объем трафика. Из-за этого база данных не может отвечать на запросы. Например, если один из ваших постов стал «вирусным», и одновременно множество пользователей пытаются зайти на ваш сайт.

Как исправить ошибку “error establishing a database connection”

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

Шаг 1: Свяжитесь со своим хостинг-провайдером

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

В нем расскажите, что у вас возникла ошибка “error establishing a database connection” и спросите:

  • работает ли сервер базы данных;
  • нет ли сейчас на сервере скачков активности или трафика.

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

Если неисправность возникла не на стороне сервера, перейдите к шагу 2.

Шаг 2: Проверьте, не были ли повреждены файлы плагинов или тем

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

Что можно сделать:

  • Подключитесь к хостингу через FTP. Вы можете сделать это с помощью бесплатного инструмента FileZilla.

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

Затем подключитесь к серверу и перейдите в корневую папку WordPress. Обычно она называется «public_html» или «www».

Если видите перед собой подпапки типа «wp-content» и «wp-admin», то вы находитесь в корне WordPress. Пример:

  • Зайдите в папку «wp-content» и переименуйте папку «plugins» . Задайте любое другое имя:
  • Вернитесь на сайт и проверьте, не решилась ли проблема.

Если ошибка устранена, то теперь вы знаете, что она была вызвана каким-то плагином. Вернитесь на сервер, переименуйте папку обратно в «plugins». Зайдите в нее и измените имена папок отдельных плагинов. Самый простой способ сделать это — добавить в конце имени нижнее подчеркивание: «_»

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

  • Если ошибка сохраняется и после переименования папки «plugins», выполните тот же процесс для папки «themes».
  • Если это не поможет, переименуйте обе папки обратно в «plugins» и «themes». Ошибка связана с чем-то другим.

Шаг 3: Проверьте, не была ли повреждена база данных

  • Зайдите в панель управления WordPress — YOURSITE.com/wp-admin

Если вы видите ту же ошибку: «error establishing a database connection», пропустите шаг.

  • Обратите внимание на то, что WordPress предлагает вам сделать. Один из вариантов:

Если увидите сообщение, начинающееся с «One or more database tables are unavailable […]”. Это означает, что нужно «отремонтировать» базу данных.

Сначала подключитесь к сайту через FTP. Перейдите в корневой каталог WordPress и загрузите на свой компьютер файл «wp-config.php».

Откройте его в текстовом редакторе и строку в конце (прямо перед «That’s all, stop editing”):

define('WP_ALLOW_REPAIR', true);

Теперь загрузите файл обратно на сайт (через FTP). Перейдите по адресу YOURSITE.com/wp-admin/maint/repair.php

Вот что вы должны увидеть:

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

Если ошибки нет, отлично! Но вам все равно нужно вернуть файл «wp-config.php» в его предыдущее состояние. Удалите строку, которую добавили, и повторно загрузите файл.

Если ошибка не устранена, перейдите к следующему шагу.

Шаг 4. Проверьте учетные данные подключения к базе данных.

Если пароль и логин от базы данных изменились, возникает ошибка “error establishing a database connection”! Ее Исправление выполняется в файле wp-config.php. Я говорю об этих строках:

define('DB_NAME', 'some_db');
define('DB_USER', 'some_username');
define('DB_PASSWORD', 'some_pass');
define('DB_HOST', 'localhost');

Они содержат всю информацию, необходимую WordPress для подключения к базе данных. Если что-то в ней неверно, соединение не будет установлено.

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

Скопируйте новые учетные данные и поместите их в файл wp-config.php.

define('DB_NAME', 'some_db'); /* это имя базы данных WordPress */
define('DB_USER', 'some_username');
define('DB_PASSWORD', 'some_pass');
define('DB_HOST', 'localhost'); /* это веб-адрес сервера вашей базы данных */

Повторно загрузите файл через FTP. После этого вернитесь на сайт и посмотрите, исправлена ​​ли ошибка. Если нет, переходим к последнему шагу.

Шаг 5: Восстановите файлы WordPress

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

Перейдите по этой ссылке и загрузите последнюю версию WordPress. Распакуйте архив и удалите из него папку «wp-content».

Далее подключитесь к своему сайту через FTP, перейдите в корень WordPress, загрузите новые файлы CMS. Перезапишите существующие файлы.

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

Как избежать возникновения этой ошибки в будущем?

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

  • Работайте только с хостингами, которые оптимизировали свои серверы для работы с WordPress. Благодаря этому вы всегда сможете рассчитывать на квалифицированную поддержку помощь.
  • Установите простой плагин резервного копирования, такой как UpdraftPlus. Благодаря ему у вас всегда будет рабочая резервная копия WordPress.

Я надеюсь, что это руководство вам поможет.

Данная публикация представляет собой перевод статьи «How to Fix “Error Establishing a Database Connection” in WordPress» , подготовленной дружной командой проекта Интернет-технологии.ру