«Ошибка установки соединения с базой данных» (в английской версии Error establishing a database connection) означает, что WordPress не достучался до своей базы. Сам сайт при этом может быть цел, данные на месте, просто код не нашёл, где их взять. Разбираем по порядку, от самого простого к редкому.
Проверка 1. Данные подключения в wp-config.php
В корне сайта лежит файл wp-config.php. Откройте его и найдите четыре параметра: DB_NAME, DB_USER, DB_PASSWORD, DB_HOST. Сверьте их с данными в панели хостинга. Частые причины:
- сменили пароль к базе, а в файле остался старый;
- перенесли сайт на новый хостинг, а данные там другие;
- DB_HOST указан как localhost, а на хостинге база живёт на отдельном сервере, адрес которого указан в панели.
Проверка 2. Работает ли сама база
Откройте phpMyAdmin или раздел баз данных в панели хостинга и попробуйте войти теми же логином и паролем. Если вход не получается, неверны сами данные или пользователь заблокирован. Если базы недоступны вовсе, сервер перегружен или остановлен: пишите в поддержку хостинга и приложите время начала проблемы.
Проверка 3. Хватает ли места и лимитов
Если закончилась квота на диске, база не может записывать данные и начинает отвечать ошибками. Проверьте место и лимиты по числу одновременных подключений: при всплеске ботов или посетителей он быстро заканчивается.
Проверка 4. Права пользователя
У пользователя базы должны быть права на выбранную базу. Если права сбросились после изменений в панели, восстановите их там же.
Проверка 5. Повреждённые таблицы
Если подключение есть, а ошибка осталась, возможно, повреждены таблицы. Добавьте в wp-config.php строку:
define( 'WP_ALLOW_REPAIR', true );
И откройте адрес /wp-admin/maint/repair.php на вашем сайте. После восстановления сразу удалите эту строку: страница восстановления доступна без авторизации, и оставлять её открытой нельзя.
Проверка 6. Если сайт переносили
После переезда проверьте значения siteurl и home в таблице опций: неверный адрес даёт другие симптомы, но иногда путает диагностику. Подробнее о безопасном переезде в статье «Как перенести WordPress без простоя».
Если ошибка плавающая
То появляется, то исчезает – почти всегда признак упора в лимиты хостинга: слишком много соединений в пике, мало памяти для базы. Помогает кэш, чтобы сайт реже обращался к базе, и тариф помощнее. Заодно стоит посмотреть, не нагружают ли сервер боты: иногда достаточно закрыть вредный трафик.
Если подключение есть, а сайт всё равно не работает
Бывает, что к базе подключиться можно, но сайт показывает ошибку. Проверьте префикс таблиц в wp-config.php (переменная $table_prefix): он должен совпадать с тем, что реально в базе. Откройте базу и посмотрите на названия таблиц: если они начинаются с другого префикса, WordPress не находит свои данные и считает, что базы нет. Такое бывает после неаккуратного переноса.
Если таблицы пусты
Пустая база означает, что данные не импортированы или импорт прервался. Проверьте, что у вас есть свежая резервная копия, и импортируйте её заново. Если копии нет, обратитесь в поддержку хостинга: у многих есть ежедневные копии базы.
Что после
Сделайте копию базы и настройте регулярные бэкапы. Если ошибка повторяется, причина обычно в нагрузке или в хостинге. Для разовых задач у меня есть услуга «Правки и ремонт сайта на WordPress», а для регулярного наблюдения – поддержка сайта с мониторингом и копиями.