Коротко: ошибка БД в WordPress: Для восстановления сначала сверьте параметры подключения в wp-config.php: имя базы, пользователя, пароль и хост. Если они верны, проверьте, запущен ли сервер MySQL и есть ли у пользователя права доступа. Часто помогает восстановление повреждённых таблиц через phpMyAdmin и сброс кеша WordPress.
Ошибка БД в WordPress «Нет соединения с базой данных» выглядит пугающе, но почти всегда решается проверкой нескольких базовых узлов. Этот сбой полностью блокирует и админку, и фронтенд, поэтому действовать приходится без привычного интерфейса. Ниже – пошаговая диагностика, которая поможет вернуть сайт к жизни без паники.
Основные причины
| Причина | Что это значит |
|---|---|
| Неверные учётные данные в wp-config.php | Опечатка в имени БД, пользователе, пароле или хосте – самая частая причина. Сайт не может авторизоваться на сервере MySQL. |
| Сервер баз данных не работает или перегружен | Служба MySQL может быть остановлена из-за сбоя, перегрузки запросами или превышения лимита одновременных соединений. |
| Пользователь потерял права на базу данных | При миграции или после обновления хостинга привилегии пользователя могли сброситься, и доступ к операциям SELECT/INSERT окажется запрещён. |
| Повреждение таблиц базы данных | Внезапное завершение запроса, аварийная перезагрузка сервера или ошибки диска могут повредить структуру таблиц, из-за чего WordPress не может прочитать данные. |
| Неверный хост или порт MySQL | Если DB_HOST указан некорректно (например, localhost вместо IP) или используется нестандартный порт, соединение не установится. |
| Конфликт плагина кеширования или темы | Плагины объектного кеша (Redis, Memcached) иногда перехватывают запросы к БД. Сбой в их работе блокирует подключение. |
Что проверить сначала
- Проверьте файл wp-config.php на ошибки в DB_NAME, DB_USER, DB_PASSWORD, DB_HOST и убедитесь, что нет лишних пробелов
- Войдите в phpMyAdmin из панели хостинга и проверьте, существует ли указанная база данных и открывается ли она
- Просмотрите логи ошибок сервера (PHP error log и MySQL error log) – там часто указана точная причина отказа
- Убедитесь, что сервер MySQL запущен: в панели хостинга найдите статус службы или выполните команду проверки через SSH
- Попробуйте перезагрузить сервер баз данных – через панель хостинга или по запросу в техническую поддержку
- Временно переименуйте папку /wp-content/plugins/ через FTP, чтобы исключить конфликт плагинов
- Очистите кеш браузера и, если используется кеширующий плагин, удалите папку /wp-content/cache/
- Проверьте права пользователя БД: в phpMyAdmin перейдите в раздел привилегий и убедитесь, что учётная запись имеет доступ к базе с нужными правами
Пошаговое решение
- 1. Через FTP или файловый менеджер хостинга откройте wp-config.php в корне сайта. Проверьте строки define(‘DB_NAME’, ‘…’), DB_USER, DB_PASSWORD и DB_HOST. Если есть опечатки – исправьте.
- 2. Войдите в phpMyAdmin (ссылка обычно в панели хостинга), найдите свою базу в списке слева. Если её нет, база могла быть удалена или переименована.
- 3. Выделите все таблицы в phpMyAdmin, внизу в выпадающем меню выберите «Восстановить таблицу» для каждой повреждённой или для всех. Это исправит структурные ошибки.
- 4. Если пользователь БД потерял права, в phpMyAdmin перейдите во вкладку «Привилегии», найдите пользователя и проверьте глобальные привилегии. При необходимости выдайте полный доступ к базе или сбросьте пароль.
- 5. Обновите пароль пользователя БД в панели хостинга (раздел «Базы данных MySQL») и скопируйте новый пароль в wp-config.php. Иногда смена пароля решает проблемы с аутентификацией.
- 6. Проверьте, не превышен ли лимит одновременных соединений к MySQL. В phpMyAdmin выполните запрос SHOW VARIABLES LIKE ‘max_connections’; и SHOW STATUS WHERE `variable_name` = ‘Threads_connected’; (при возможности).
- 7. Если сервер MySQL перегружен, перезагрузите его через панель управления хостингом или в разделе «Управление службами». После перезагрузки подождите 1-2 минуты и обновите сайт.
- 8. Временно деактивируйте плагины: через FTP переименуйте папку plugins в plugins_old. Если сайт заработал – проблема в одном из плагинов, включайте их по одному.
- 9. Удалите кеш WordPress: отключите плагины кеширования (или удалите их временно), очистите содержимое папок /wp-content/cache/ и /wp-content/object-cache.php (если есть).
- 10. Если используется внешний объектный кеш (Redis), временно закомментируйте соответствующие строки в wp-config.php или отключите службу.
- 11. Проверьте, не блокирует ли хостинг доступ к БД с вашего IP или из-за превышения ресурсов. Обратитесь в техподдержку хостинга с описанием ошибки.
Проверить ошибку WordPress
Введите ошибку WordPress, PHP, плагина, темы, REST API или кратко опишите проблему сайта.
FAQ
Что точно означает сообщение «Нет соединения с базой данных» в WordPress?
WordPress не смог установить связь с сервером MySQL, используя параметры из wp-config.php. Без этого движок не может прочитать или сохранить ни одной записи, поэтому сайт показывает критическую ошибку.
Может ли ошибка возникнуть из-за переезда сайта на другой хостинг?
Да, при миграции часто меняются хост для MySQL, имя пользователя или пароль. Обязательно обновляйте конфигурацию в wp-config.php и проверяйте права нового пользователя базы данных.
Как понять, что база данных повреждена?
В phpMyAdmin рядом с таблицей может стоять пометка «Используется» или «Требуется восстановление». Также в логах MySQL появляются сообщения вида «Table ‘…’ is marked as crashed».
Можно ли исправить ошибку, не имея доступа к панели хостинга?
Если доступ к панели утерян, единственный способ – восстановить резервную копию файлов и базы данных или связаться с поддержкой хостинга для восстановления учётных данных.
Почему ошибка появляется только после обновления WordPress или плагинов?
Обновление может изменить способ подключения к БД или конфликтовать с кеширующими плагинами. Часто помогает очистка кеша и переустановка плагина кеширования заново.
Итог
Ошибка соединения с базой данных почти всегда решается последовательной проверкой трёх звеньев: правильно ли указаны учётные данные в wp-config.php, жив ли сервер MySQL и есть ли у пользователя доступ к таблицам. Даже если сайт внешне полностью упал, панель хостинга, FTP и phpMyAdmin дают достаточно инструментов для быстрой починки. Запишите проверенные комбинации хоста и учётных данных – в следующий раз восстановление займёт всего пару минут.