Ошибка соединения с базой данных WordPress: как исправить
Ошибка соединения с базой данных WordPress (Error establishing a database connection) значит, что сайт не смог подключиться к MySQL: в wp-config.php указаны неверные данные доступа или сервер базы не отвечает. Тест подключения на десять строк по тексту ответа сразу показывает, какая из двух причин у вас.
Ответ за 30 секунд
Сайт не смог подключиться к MySQL. Сверьте DB_NAME, DB_USER, DB_PASSWORD и DB_HOST в wp-config.php с данными из панели хостинга. Если они верны, проверьте квоту базы и работу сервера. Тест подключения называет причину текстом ошибки: Access denied, Unknown database или нет ответа.
Тариф Year: 2 базы, Optimo и выше: без лимита, от 316 ₽ в месяц при оплате за год (Таймвеб, на 20 октября 2026).
Что проверить, если данные верны, а база не отвечает4константы доступа к базе в wp-config.php
145код ошибки повреждённой таблицы MySQL
repair.phpскрипт восстановления таблиц в wp-admin/maint
01 · 1 мин
Из-за чего WordPress теряет связь с базой данных#
WordPress хранит записи, настройки и пользователей в базе MySQL или MariaDB. При каждой загрузке страницы он открывает соединение с базой по четырём константам из файла wp-config.php. Не открылось соединение, и вместо сайта выводится одна строка ошибки.
| Причина | Как проявляется | Где чинить |
|---|---|---|
| Неверные данные в wp-config.php | Ошибка на сайте и в админке сразу после переноса или смены пароля | wp-config.php и панель хостинга |
| Сбой хостинга или превышена квота базы | Работало, затем пропало без ваших правок | Панель хостинга, поддержка |
| Повреждённые таблицы | Сайт частично открывается, в админке просят восстановление | phpMyAdmin или WP_ALLOW_REPAIR |
| Взлом сайта | Данные верные, база на месте, но ошибка остаётся | Проверка на вирусы, см. лечение сайта от вирусов |
Список причин совпадает с разделом «Error Establishing Database Connection» в документации WordPress: неверные данные в wp-config.php, проблемы на стороне хостинга и взлом.
02 · 1 мин
Как проверить DB_NAME, DB_USER, DB_PASSWORD и DB_HOST в wp-config.php#
- Откройте раздел баз данных в панели хостинга и выпишите имя базы, имя пользователя и адрес сервера.
- Скачайте wp-config.php из корня сайта и найдите четыре строки с префиксом DB_.
- Сравните значения по буквам. Лишний пробел, не тот регистр и пропавший префикс аккаунта дают ту же ошибку.
- Если пароль неизвестен, задайте новый в панели и впишите его в DB_PASSWORD. Документация WordPress для случая «данные верны, а доступа нет» тоже советует сбросить пароль MySQL.
- Загрузите файл обратно и обновите сайт.
define( 'DB_NAME', 'имя_базы' );
define( 'DB_USER', 'имя_пользователя' );
define( 'DB_PASSWORD', 'пароль' );
define( 'DB_HOST', 'адрес_сервера_базы' );
Адрес в DB_HOST берите из панели: у одних хостингов это localhost, у других отдельное имя сервера. Остальные константы файла разобраны в статье wp-config.php, а саму базу и её таблицы объясняет база данных WordPress.
03 · 1 мин
Как проверить подключение к MySQL отдельным файлом#
Если данные выглядят верными, а ошибка осталась, проверьте подключение без WordPress. Создайте файл dbtest.php в корне сайта, подставьте те же значения и откройте его в браузере.
<?php
mysqli_report( MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT );
try {
new mysqli( 'адрес_сервера', 'пользователь', 'пароль', 'имя_базы' );
echo 'Подключение работает';
} catch ( mysqli_sql_exception $e ) {
echo 'Ошибка: ' . $e->getMessage();
}
Текст ошибки отвечает на вопрос, что чинить. Access denied for user значит, что неверны пользователь или пароль. Unknown database значит, что неверно имя базы. Отказ в соединении или ошибка разрешения адреса говорит о неверном DB_HOST или о том, что сервер базы не работает.
Удалите dbtest.php сразу после проверки
В файле лежит пароль от базы открытым текстом, и любой, кто знает адрес файла, его прочитает.
04 · 1 мин
Что делать, если WordPress просит восстановить таблицы базы#
Когда данные верны и сервер отвечает, а таблица повреждена (в документации WordPress это ошибка 145), нужен ремонт. Сначала скачайте копию базы через phpMyAdmin: ремонт меняет таблицы.
- Добавьте в wp-config.php строку
define( 'WP_ALLOW_REPAIR', true );. - Откройте адрес
https://ваш-сайт/wp-admin/maint/repair.php. Входить в админку для этого не нужно. - Нажмите кнопку восстановления базы (Repair Database) и дождитесь отчёта.
- Удалите строку WP_ALLOW_REPAIR из wp-config.php: пока она есть, скрипт доступен любому посетителю.
Вместо скрипта можно выбрать таблицы в phpMyAdmin и выполнить для них «Восстановить таблицу», либо попросить поддержку хостинга запустить CHECK и REPAIR. Свежая копия на случай неудачи нужна в любом варианте: резервные копии WordPress.
Инструмент · 1 мин
Что проверить, если данные верны, а база не отвечает#
Документация WordPress называет две причины на стороне хостинга: превышенная квота базы и сбой сервера. Откройте панель, посмотрите размер базы и новости о работах. Если другие ваши сайты на том же аккаунте тоже не открываются, дело в сервере, и помочь может только поддержка.
На собственном VPS проверьте, что служба базы запущена: systemctl status mysql, а для MariaDB systemctl status mariadb. Служба базы может остановиться при нехватке памяти на сервере, тогда WordPress выдаёт ту же ошибку.
Что чинить при ошибке соединения с базой
Два вопроса про тест подключения и последние действия, ответ сразу
06 · 1 мин
Вопросы об ошибке соединения с базой данных WordPress#
Что значит Error establishing a database connection в WordPress?
Сайт не смог подключиться к базе MySQL. Причина в неверных DB_NAME, DB_USER, DB_PASSWORD или DB_HOST, в сбое сервера базы или в повреждённых таблицах.
Почему ошибка соединения с базой WordPress появилась после переноса сайта?
У нового хостинга другие имя базы, пользователь, пароль и адрес сервера. Обновите четыре константы в wp-config.php и проверьте, что дамп базы загружен целиком.
Как проверить подключение к базе данных WordPress без самого WordPress?
Запустите короткий PHP-файл с mysqli и теми же четырьмя значениями. Его сообщение отличит неверный пароль от неверного имени базы и от недоступного сервера.
Безопасно ли оставлять WP_ALLOW_REPAIR включённым в wp-config.php?
Нет. Скрипт repair.php открывается без входа в админку, поэтому константу включают на время ремонта и сразу удаляют.
Почему этому можно верить
Как мы проверяли
Источники цифр на этой странице: Виртуальный хостинг Таймвеб, timeweb.com/ru/services/hosting, проверено 20 октября 2026; Документация WordPress, ru.wordpress.org/support, проверено 20 октября 2026; Документация WordPress: распространённые ошибки, developer.wordpress.org/advanced-administration/wordpress/common-errors, проверено 20 октября 2026; Документация WordPress: wp-config.php, developer.wordpress.org/advanced-administration/wordpress/wp-config, проверено 20 октября 2026.
Разместите сайт на WordPress
Виртуальный хостинг Таймвеб от 316 ₽ в месяц: NVMe-диски, бесплатный SSL, домен .RU в подарок и 10 дней на тест.
- Тарифы от 316 ₽ в месяц
- Бесплатный SSL и DNS
- Домен .RU или .РФ в подарок
- Бесплатный перенос сайта