Перейти к содержимому
EVI Solutions

Ошибка при подключении к базе данных: что проверить в WordPress

Средне 25 мин Обновлено:

Краткий ответ

Эта ошибка означает, что WordPress не может подключиться к базе данных MySQL и поэтому не может загрузить сайт. Чаще всего виноваты неверные данные в `wp-config.php`, недоступный сервер MySQL или удалённый пользователь базы. Сначала проверьте данные подключения и только потом исправляйте таблицы.

Как проявляется проблема

  • Сайт показывает сообщение «Error establishing a database connection» или «Ошибка при подключении к базе данных»
  • Вы не можете войти в `/wp-admin`, отображается та же ошибка
  • Сайт работал вчера, а теперь полностью недоступен
  • Ошибка появилась после смены пароля или переноса сайта на другой хостинг

Частые причины

Неверные данные в wp-config.php

Имя базы, пользователь, пароль или хост изменены или записаны с ошибкой. WordPress не может войти на сервер MySQL.

Сервер MySQL недоступен

Сервер базы данных упал, был перезагружен или достиг лимита подключений. В этом случае ошибка затрагивает все сайты на одном хостинге.

Пользователь базы удалён или изменён пароль

Кто-то в панели хостинга удалил пользователя, снял привилегии или сменил пароль, а `wp-config.php` не обновлён.

Повреждённая или неполная база

Прерванный импорт, сбой диска или неудачное резервное копирование могут оставить базу в состоянии, в котором WordPress не может подключиться.

Неверный хост или порт

После переноса на другой сервер остаётся старый `DB_HOST`, например `localhost` вместо имени сервера, которое требует хостинг.

Пошаговое решение

  1. 1

    Запишите точное сообщение об ошибке

    Откройте сайт и перепишите всё сообщение, включая возможный код ошибки. Если видно только общее сообщение, сохраните копию wp-config.php, затем временно включите показ ошибок строками define('WP_DEBUG', true); и define('WP_DEBUG_DISPLAY', true);. Делайте это только ненадолго и не на публичном сайте, так как сообщения могут увидеть посетители; после обязательно отключите. Точный текст сильно сужает причину.

  2. 2

    Проверьте, работает ли сервер MySQL

    В панели хостинга (cPanel, Plesk или аналогичной) или на странице статуса хостинга проверьте, доступна ли служба MySQL и не достигнут ли лимит ресурсов. Если сервер упал или достигнут лимит подключений, дождитесь восстановления или обратитесь в поддержку хостинга. Если другие сайты на том же хостинге работают, проблема, вероятно, в вашей базе.

  3. 3

    Откройте wp-config.php и проверьте данные

    Через FTP-клиент или файловый менеджер в панели откройте wp-config.php в корне сайта. Сравните значения DB_NAME, DB_USER, DB_PASSWORD и DB_HOST с данными в панели хостинга. Обратите внимание на пробелы, регистр букв и на то, заключён ли пароль в кавычки.

  4. 4

    Проверьте пользователя базы и привилегии

    В панели хостинга откройте раздел баз данных MySQL и пользователей. Убедитесь, что пользователь из wp-config.php существует, назначен именно этой базе и имеет все привилегии. Если нет, назначьте его снова или сбросьте пароль и запишите новый в wp-config.php.

  5. 5

    Проверьте DB_HOST и порт

    Если хостинг использует отдельный сервер базы данных, DB_HOST не localhost, а имя или IP-адрес, который вам дал хостинг, иногда с портом в виде имя_сервера:3306. Найдите точное значение в документации хостинга или в панели и запишите его в wp-config.php.

  6. 6

    Сделайте резервную копию перед дальнейшими изменениями

    Прежде чем трогать базу, скачайте копию файлов и экспортируйте базу через phpMyAdmin или инструменты хостинга. Сохраните и копию wp-config.php. Так вы сможете вернуться к предыдущему состоянию, если что-то пойдёт не так.

  7. 7

    Проверьте, существуют ли база и таблицы

    В phpMyAdmin проверьте, существует ли база с именем из wp-config.php и содержит ли она таблицы с префиксом, соответствующим $table_prefix. Если таблицы пусты или отсутствуют, база, вероятно, удалена или импорт был неудачным.

  8. 8

    Исправьте таблицы, если они повреждены

    В phpMyAdmin выделите таблицы и выберите опцию исправления (Repair table). Если исправление не помогает, восстановите базу из последней резервной копии. После восстановления снова проверьте данные в wp-config.php.

  9. 9

    Проверьте сайт и отключите отладку

    Откройте сайт и /wp-admin в окне браузера в режиме инкогнито. Если сайт загружается, удалите строки WP_DEBUG и WP_DEBUG_DISPLAY или установите их в false. Если ошибка остаётся, вернитесь к шагу проверки пользователя и хоста.

Если ничего не помогает

Если данные в wp-config.php верны, пользователь и привилегии в порядке, а база существует, проблема, скорее всего, на стороне сервера. В этом случае создайте тикет в поддержке хостинга и укажите точное сообщение об ошибке, время её появления и меняли ли вы что-то непосредственно перед этим. Если база повреждена, хостинг может восстановить последнюю резервную копию, но вы потеряете содержимое, созданное после неё. Для сайтов на WooCommerce также проверьте, не достигла ли база лимита размера или количества подключений, так как тогда ошибка начинает появляться периодически, а затем постоянно.

Как избежать повторения

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

Когда лучше обратиться к специалисту

Если вы не можете войти в панель хостинга, не знаете точных данных базы или база повреждена, лучше обратиться в IT-поддержку, чем самостоятельно менять таблицы и рисковать потерей данных.

Создание сайтов · Быстрые, SEO-оптимизированные многоязычные сайты

Частые вопросы

Означает ли ошибка базы, что сайт потерян навсегда?

Нет. В большинстве случаев сайт и содержимое целы, просто WordPress не может подключиться к базе. Если данные в `wp-config.php` и пользователь базы совпадают, сайт восстанавливается без потери содержимого.

Как понять, проблема в моей базе или на сервере?

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

Можно ли исправить базу без phpMyAdmin?

Можно, если хостинг предлагает инструмент исправления базы в панели или если у вас есть доступ к командной строке. Без этого безопаснее восстановить базу из резервной копии или попросить хостинг сделать это.

Поделиться
Не нашли решение?ИИ-помощник работает 24/7. Опишите проблему или отправьте скриншот ошибки и получите инструкцию для вашего случая.Спросить ИИ-помощника