Проверьте статус MySQL/MariaDB на хостинге и параметры DB_NAME, DB_USER, DB_PASSWORD, DB_HOST в wp-config.php. Не публикуйте пароль и не переустанавливайте WordPress до установления причины.
Сообщение «Error establishing a database connection» означает, что WordPress не смог подключиться к MySQL/MariaDB. Начните с проверки состояния сервера БД у хостинг-провайдера и параметров подключения. Не переустанавливайте WordPress и не импортируйте старую базу до диагностики.
Что проверить первым
- Посмотрите сообщения хостинга о работах, авариях, нехватке ресурсов и превышении квоты базы.
- Уточните, ошибка появилась после переноса сайта, изменения пароля БД, обновления хостинга или сама по себе.
- Если недавно меняли доступы — проверьте
wp-config.php, сохраняя секреты в закрытом окружении. - Сохраните резервную копию файлов и базы (если БД доступна через панель), прежде чем править конфигурацию.
1. Проверьте параметры в wp-config.php
Файл находится в корне WordPress. В нём должны быть правильно заданы значения:
define( 'DB_NAME', 'example_database' );
define( 'DB_USER', 'example_user' );
define( 'DB_PASSWORD', 'REPLACE_WITH_REAL_SECRET_LOCALLY' );
define( 'DB_HOST', 'localhost' );
Это пример, а не готовый конфиг. Имя базы, пользователь, пароль и сервер зависят от хостинга. Никогда не вставляйте реальные значения из wp-config.php в открытый чат, заявку без защищённого канала или публичный репозиторий.
DB_HOST необязательно равен localhost: на части хостингов используется отдельный адрес и порт или сокет. Сверяйте значения с панелью хостера.
2. Проверьте доступность MySQL/MariaDB
В панели хостинга проверьте, запущена ли служба базы и не превышен ли лимит ресурсов. Если доступен безопасный администрируемый клиент СУБД, попробуйте открыть именно нужную базу под выделенным пользователем без публикации логина/пароля. При ошибке «Access denied» вероятны неверные права или учётные данные; при «connection refused» — недоступность сервиса или сетевые правила.
На управляемом хостинге самостоятельно запускать или сбрасывать MySQL обычно не нужно: обратитесь в поддержку с временем ошибки, названием услуги и обезличенным сообщением из журнала.
3. Если ошибка началась после переноса
Сравните старый и новый DB_HOST, имя базы, пользователя, префикс таблиц и факт завершения импорта SQL. Не используйте SQL-команды «очистить и импортировать» как первую попытку ремонта: на действующем сайте могут быть новые комментарии, заявки и заказы.
Проверки файлов, базы и URL при переносе описаны отдельно в инструкции переноса WordPress. Это другой интент: здесь речь только о неудачном соединении.
4. Как читать журналы и отличать проблему от PHP Fatal Error
Если вы видите сообщение подключения к базе, это ещё не «критическая ошибка PHP». Проверяйте именно сеть, состояние СУБД, пользователя и параметры WordPress. Если вместо сообщения показывается «На сайте возникла критическая ошибка», используйте отдельную инструкцию и PHP-журнал.
Серверные логи могут содержать имена баз, внутренние IP-адреса и части строк подключения. Перед публикацией или отправкой третьим лицам удаляйте чувствительные данные.
5. Как подтвердить восстановление
После исправления параметров проверьте главную страницу, вход в админку, несколько динамических страниц, публикацию тестовой записи (на staging), поиск, формы и оформление заказа. Для магазина убедитесь, что новые заказы попадают в актуальную базу, а не старую копию. Мониторинг должен показывать отсутствие повторяющихся ошибок соединения.
Чего не делать
- Не сбрасывайте пароль БД без понимания, какие ещё приложения его используют.
- Не запускайте «ремонт таблиц» или прямую замену базы просто из-за отсутствия соединения.
- Не открывайте
wp-config.phpчерез публичную ссылку и не пересылайте пароль для диагностики. - Не удаляйте таблицы
wp_и не меняйте их префикс наугад.
Если правильные параметры не помогли, эскалируйте проблему хостеру: предоставьте время и сообщение об ошибке без пароля, попросите проверить доступность сервера, сетевые ограничения, квоты и права пользователя.
Источник: https://developer.wordpress.org/advanced-administration/wordpress/common-errors/
Материал был полезен?
Помогите нам сделать материалы точнее и понятнее.