Решение ошибки Error Establishing a Database Connection в WordPress

Ошибка Error Establishing a Database Connection — одна из самых распространённых и неприятных ошибок в WordPress. Она возникает, когда сайт не может подключиться к базе данных MySQL. В этой статье мы подробно разберём причины появления ошибки, способы её диагностики и методы исправления с реальными примерами кода и полезными плагинами.

Почему возникает ошибка Error Establishing a Database Connection

Основная причина — WordPress не может соединиться с базой данных. Это может случиться по нескольким причинам:

  • Неверные данные для подключения к базе данных в файле wp-config.php (имя пользователя, пароль, имя базы данных, хост);
  • Сервер базы данных MySQL недоступен или перегружен;
  • Повреждённая база данных;
  • Проблемы с правами доступа MySQL;
  • Перегрузка сервера из-за слишком большого количества запросов;
  • Ошибки на уровне хостинга или сбои в работе сервера.

Для успешного устранения ошибки важно последовательно проверить все эти причины.

Как проверить настройки подключения к базе данных

Первым делом откройте файл wp-config.php в корне сайта и проверьте значения следующих констант:

define('DB_NAME', 'database_name_here');
define('DB_USER', 'username_here');
define('DB_PASSWORD', 'password_here');
define('DB_HOST', 'localhost');

Убедитесь, что:

  • DB_NAME соответствует имени вашей базы данных;
  • DB_USER и DB_PASSWORD — правильные логин и пароль;
  • DB_HOST обычно - localhost, но у некоторых хостеров может отличаться, например, 127.0.0.1 или специальный адрес.

Если вы не уверены, получите эти данные в панели управления хостингом или у техподдержки.

Пример проверки подключения через простой скрипт

Для дополнительной диагностики создайте файл check-db.php рядом с wp-config.php с таким содержимым:

<?php
require_once 'wp-config.php';
$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if (!$link) {
    die('Ошибка подключения к базе данных: ' . mysqli_connect_error());
}
echo 'Подключение к базе данных успешно!';
mysqli_close($link);
?>

Зайдите в браузере по адресу https://ваш_сайт/check-db.php. Если увидите сообщение об ошибке, значит проблема в настройках доступа к базе.

Проверка состояния сервера базы данных

Если настройки верны, но ошибка остаётся, возможно, сервер MySQL не работает или перегружен.

Для проверки можно зайти в панель управления хостингом и посмотреть статус MySQL сервера. Часто помогает перезапуск сервера базы данных.

Если у вас выделенный сервер или VPS, выполните команду:

sudo systemctl status mysql

Или

sudo service mysql status

Если сервер не работает, запустите:

sudo systemctl start mysql

Или

sudo service mysql start

Как исправить повреждённую базу данных

Иногда причина ошибки — повреждения в базе данных. WordPress имеет встроенный инструмент для восстановления базы.

Добавьте в wp-config.php следующую строку:

define('WP_ALLOW_REPAIR', true);

После этого откройте в браузере https://ваш_сайт/wp-admin/maint/repair.php. На странице будет выбор — восстановить базу или восстановить и оптимизировать. Выберите нужное действие.

После завершения обязательно удалите или закомментируйте эту строку из wp-config.php для безопасности.

Автоматизация восстановления через плагин

Если хотите автоматизировать процесс диагностики и восстановления базы, используйте плагин WP-DBManager. Он позволяет делать бэкапы, оптимизацию и ремонт базы прямо из админки.

Установка через админку WordPress:

  • Перейдите в Плагины > Добавить новый;
  • Введите в поиске «WP-DBManager»;
  • Установите и активируйте плагин;
  • В настройках плагина запустите восстановление базы.

Использование кода для проверки соединения и вывода ошибок — пример функции wperror_check_db_connection()

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

function wperror_check_db_connection() {
    $link = @mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
    if (!$link) {
        return 'Ошибка подключения к базе данных: ' . mysqli_connect_error();
    }
    mysqli_close($link);
    return 'Подключение к базе данных успешно.';
}

Вы можете вызвать эту функцию в нужном месте сайта или в админке, чтобы быстро проверить состояние подключения.

Другие полезные советы по устранению ошибки

Проверка прав пользователя базы данных

Убедитесь, что у пользователя базы данных есть необходимые права. Для этого в MySQL выполните:

SHOW GRANTS FOR 'username'@'host';

Если прав недостаточно, добавьте их:

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'host';
FLUSH PRIVILEGES;

Проверка лимитов сервера и нагрузки

Если база перегружена, возможно стоит оптимизировать запросы или увеличить ресурсы сервера. Популярные плагины для кэширования — WP Super Cache или W3 Total Cache — помогут снизить нагрузку на базу.

Проверка ошибок в логах сервера

Обязательно посмотрите логи ошибок Apache/Nginx и MySQL. Они могут дать точную информацию о причинах сбоя.

Заключение

Ошибка Error Establishing a Database Connection — частая проблема, но с правильным подходом её можно быстро решить. Начинайте с проверки настроек wp-config.php, затем проверяйте состояние сервера базы и целостность базы данных. Используйте встроенные инструменты WordPress и проверенные плагины для диагностики и ремонта. Если знаете PHP, добавляйте свои функции диагностики, чтобы ускорить решение проблем.

Решение ошибки Jetpack Connection Error в WordPress
04.01.2026
Решение ошибки 404 на страницах WordPress
12.12.2025
Решение ошибки WP Logout Redirect Loop в WordPress: как устранить зацикливание выхода
09.02.2026
Решение ошибки WP Admin admin-ajax.php 403 Forbidden в WordPress
31.12.2025
Как исправить неработающий параметр Sold Individually в WooCommerce
17.05.2026