...

Ошибка подключения к базе данных WordPress: как исправить Error establishing a database connection

⏱ Время на прочтение: 9 минут

Обновлено
АвторОлег Михневич
Комментарии0

Хотите узнать больше?

Подписывайтесь на мой Telegram-канал
Я делюсь контентом, которого нет в блоге

@olegpress

Чем я пользуюсь

  • Timeweb — лучший хостинг для сайта
  • Paradigma — премиум шаблоны для сайта
  • WPShop — шаблоны для сайта WordPress

Ошибка подключения к базе данных WordPress появляется, когда сайт не может соединиться с MySQL/MariaDB и получить данные из базы. Из-за этого WordPress не видит записи, страницы, настройки, пользователей и вместо сайта показывает сообщение «Error establishing a database connection» или «Ошибка установки соединения с базой данных».

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

Ошибка подключения WordPress к базе данных MySQL
Ошибка подключения WordPress к базе данных MySQL

Ниже — рабочая инструкция, как быстро понять причину ошибки и восстановить сайт. Идём от самых частых и безопасных действий к более сложным.

Быстрая диагностика:

  • если сайт только что работал и внезапно упал — сначала проверь хостинг и MySQL;
  • если ошибка появилась после переноса — проверь DB_NAME, DB_USER, DB_PASSWORD, DB_HOST;
  • если ошибка появилась после импорта базы — проверь таблицы и префикс;
  • если ошибка появилась после обновления — проверь плагины, тему и файлы WordPress;
  • если база повреждена — попробуй встроенный ремонт WordPress или восстановление из бэкапа.

Что означает Error establishing a database connection в WordPress

WordPress состоит из файлов и базы данных. Файлы отвечают за работу движка, темы и плагинов, а база данных хранит содержимое сайта: записи, страницы, меню, настройки, пользователей, комментарии и часть параметров плагинов.

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

Error establishing a database connection в WordPress
Сообщение Error establishing a database connection в WordPress

На практике это означает одно из нескольких:

  • в файле wp-config.php указаны неправильные данные подключения;
  • пользователь базы данных не имеет доступа к нужной базе;
  • MySQL-сервер на хостинге временно не отвечает;
  • база данных повреждена или импортирована не полностью;
  • после переноса сайта изменились имя базы, пароль, хост или префикс таблиц;
  • после обновления повредились файлы WordPress, плагина или темы.
WordPress не может связаться с базой данных
WordPress не может получить данные из базы

Если вместе с этой ошибкой появляются белый экран, критическая ошибка, ошибка 500 или проблемы с входом в админку, дополнительно посмотри общую инструкцию: WordPress не работает — что делать и как провести диагностику.

Шаг 1. Проверь, работает ли база данных на хостинге

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

Что сделать в первую очередь:

  1. Зайди в панель управления хостингом.
  2. Открой раздел «Базы данных» или MySQL.
  3. Проверь, существует ли база данных сайта.
  4. Попробуй открыть phpMyAdmin.
  5. Если phpMyAdmin не открывается или долго грузится — вероятно, проблема на стороне MySQL.

Если доступа к phpMyAdmin нет, сразу напиши в поддержку хостинга. Вот готовый текст:

Здравствуйте! На сайте WordPress появилась ошибка «Error establishing a database connection». Проверьте, пожалуйста, работает ли MySQL/MariaDB сервер, нет ли превышения лимитов подключений и доступна ли база данных для сайта.

Если поддержка отвечает, что с MySQL всё нормально, переходи к проверке wp-config.php.

Шаг 2. Проверь данные подключения в wp-config.php

Файл wp-config.php — главное место, где WordPress хранит данные для подключения к базе. Он лежит в корневой папке сайта: чаще всего это public_html, www, httpdocs или папка с названием домена.

В этом файле нужно проверить четыре строки:

  • DB_NAME — имя базы данных;
  • DB_USER — имя пользователя базы данных;
  • DB_PASSWORD — пароль пользователя базы данных;
  • DB_HOST — сервер базы данных, часто localhost.
Проверка данных подключения к базе данных в wp-config.php
Данные подключения к базе данных в файле wp-config.php

В коде это выглядит примерно так:

define( 'DB_NAME', 'имя_базы_данных' );
define( 'DB_USER', 'имя_пользователя' );
define( 'DB_PASSWORD', 'пароль_пользователя' );
define( 'DB_HOST', 'localhost' );

Как проверить, что данные правильные

Открой в панели хостинга раздел «Базы данных» и сравни данные с тем, что указано в wp-config.php. Название базы и имя пользователя должны совпадать полностью: с префиксами, подчёркиваниями, цифрами и регистром букв.

Особенно часто ошибка возникает после:

  • переноса сайта на другой хостинг;
  • смены пароля пользователя базы данных;
  • восстановления сайта из резервной копии;
  • ручного импорта базы;
  • создания новой базы вместо старой.

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

Шаг 3. Проверь DB_HOST: не всегда это localhost

Многие инструкции пишут, что в строке DB_HOST всегда должен быть localhost. Но это не всегда так. На части хостингов сервер базы данных может быть отдельным, например:

define( 'DB_HOST', 'localhost' );

или так:

define( 'DB_HOST', 'mysql.example.ru' );

или даже с портом:

define( 'DB_HOST', '127.0.0.1:3306' );

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

Шаг 4. Проверь базу данных через phpMyAdmin

Если данные в wp-config.php выглядят правильно, проверь саму базу. Для этого зайди в phpMyAdmin через панель хостинга и открой базу, которая указана в строке DB_NAME.

Внутри должны быть таблицы WordPress. Обычно они выглядят так:

  • wp_posts
  • wp_options
  • wp_users
  • wp_postmeta
  • wp_terms
  • wp_comments
Таблицы базы данных WordPress в phpMyAdmin
Таблицы WordPress в базе данных phpMyAdmin

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

  1. проверить, та ли база указана в DB_NAME;
  2. найти правильную базу в панели хостинга;
  3. восстановить базу из резервной копии;
  4. повторить импорт SQL-файла, если ошибка появилась после переноса.

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

Шаг 5. Проверь префикс таблиц WordPress

Даже если база существует и таблицы на месте, сайт может не работать из-за неправильного префикса таблиц.

Префикс указан в файле wp-config.php в строке:

$table_prefix = 'wp_';

Если в базе таблицы называются wp_posts, wp_options, wp_users, то префикс должен быть:

$table_prefix = 'wp_';

Но если таблицы называются, например, site_posts, site_options, site_users, то в wp-config.php должно быть:

$table_prefix = 'site_';
Префикс таблиц WordPress в базе данных
Префикс таблиц в базе должен совпадать с wp-config.php

Это частая ошибка после переноса сайта. Базу импортировали правильно, но в wp-config.php остался старый префикс, и WordPress не может найти нужные таблицы.

Шаг 6. Проверь пользователя базы данных и его права

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

В панели хостинга проверь:

  • существует ли пользователь, указанный в DB_USER;
  • привязан ли он к нужной базе данных;
  • есть ли у него права на чтение и запись;
  • не был ли пользователь удалён после восстановления или переноса.

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

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

Шаг 7. Восстанови повреждённые таблицы базы данных

Диагностика ошибки подключения WordPress к базе данных
Диагностика и восстановление подключения WordPress к базе данных

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

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

  1. Открой файл wp-config.php.
  2. Добавь строку перед комментарием That's all, stop editing!:
define( 'WP_ALLOW_REPAIR', true );
  1. Открой в браузере адрес:
https://твой-сайт.ru/wp-admin/maint/repair.php
  1. Нажми «Починить базу данных».
Восстановление базы данных WordPress через repair.php
Страница восстановления базы данных WordPress

Важно: после завершения ремонта обязательно удали строку:

define( 'WP_ALLOW_REPAIR', true );

Эта страница восстановления не требует входа в админку. Если оставить строку в файле, любой человек сможет открыть страницу ремонта базы.

Шаг 8. Если ошибка появилась после переноса сайта

После переноса сайта ошибка подключения к базе данных возникает особенно часто. Причина почти всегда в несовпадении старых и новых данных.

Проверь по порядку:

  • создана ли база данных на новом хостинге;
  • импортирован ли SQL-файл полностью;
  • указано ли новое имя базы в DB_NAME;
  • указан ли новый пользователь в DB_USER;
  • совпадает ли пароль в DB_PASSWORD;
  • правильный ли указан DB_HOST;
  • совпадает ли $table_prefix с таблицами в phpMyAdmin.

Если после импорта в phpMyAdmin таблиц мало, импорт оборвался. Частая причина — большой размер SQL-файла и лимиты хостинга. В этом случае лучше попросить поддержку импортировать базу вручную или использовать инструмент восстановления из резервной копии.

Шаг 9. Если ошибка появилась после обновления WordPress, темы или плагина

Иногда ошибка подключения к базе данных появляется не из-за самой базы, а после обновления плагина, темы или файлов WordPress. Например, обновление прошло с ошибкой, часть файлов не записалась, плагин начал конфликтовать с версией PHP или сломал запросы к базе.

Отключи все плагины через файловый менеджер

Если в админку не пускает, отключи плагины через хостинг:

  1. Открой папку /wp-content/.
  2. Найди папку plugins.
  3. Переименуй её в plugins_old.
  4. Проверь сайт.
Отключение плагинов WordPress через файловый менеджер
Переименование папки plugins для отключения всех плагинов

Если сайт открылся, причина в одном из плагинов. Верни папке имя plugins, затем отключай плагины по одному, переименовывая их папки внутри /wp-content/plugins/.

Когда сайт снова заработает после отключения конкретного плагина — виновник найден. Его лучше удалить, заменить или установить совместимую версию.

Проверь активную тему

Если отключение плагинов не помогло, проверь тему. Открой папку:

/wp-content/themes/

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

Если сайт заработал после отключения темы, проблема в теме или её функциях. Особенно часто это бывает после редактирования functions.php или установки несовместимого обновления.

Шаг 10. Восстанови файлы ядра WordPress

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

Порядок действий:

  1. Сделай резервную копию файлов и базы данных.
  2. Скачай свежий архив WordPress с официального сайта.
  3. Распакуй архив на компьютере.
  4. Удали из распакованной папки wp-content.
  5. Не трогай свой файл wp-config.php на сервере.
  6. Загрузи остальные файлы WordPress на сервер с заменой.

Так ты заменишь повреждённые файлы ядра, но не затронешь тему, плагины, загрузки и настройки подключения.

Перед заменой файлов обязательно сделай бэкап. Не удаляй папку wp-content на рабочем сайте — там находятся темы, плагины и загруженные изображения.

Шаг 11. Восстановление из резервной копии

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

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

Что делать:

  1. Открой раздел «Резервные копии» на хостинге.
  2. Выбери дату, когда сайт точно работал.
  3. Восстанови файлы сайта.
  4. Восстанови базу данных.
  5. Проверь сайт и вход в админку.

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

Что писать в поддержку хостинга

Чтобы не объяснять проблему с нуля, можно отправить такой текст:

Здравствуйте! На сайте WordPress ошибка «Error establishing a database connection». Я проверил файл wp-config.php, базу данных и пользователя. Проверьте, пожалуйста, доступность MySQL/MariaDB, права пользователя базы данных, лимиты подключений, наличие ошибок в логах MySQL и возможность восстановления базы из резервной копии.

Если ошибка появилась после переноса, отправь такой вариант:

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

Как избежать ошибки подключения к базе данных в будущем

Полностью исключить такие сбои нельзя, но можно сильно снизить риск.

  • Делай резервные копии перед обновлением WordPress, темы и плагинов.
  • Не обновляй всё сразу на рабочем сайте, особенно если сайт приносит заявки или продажи.
  • Храни отдельно доступы к базе данных и FTP/хостингу.
  • После переноса сайта сразу проверяй wp-config.php, таблицы и префикс.
  • Не удаляй базы данных, если не уверен, к какому сайту они относятся.
  • Используй нормальный хостинг с доступом к phpMyAdmin, резервным копиям и поддержке.
  • Периодически проверяй, что резервные копии действительно создаются.

Заключение

Ошибка подключения к базе данных WordPress чаще всего решается без сложного ремонта. В первую очередь проверь, работает ли MySQL на хостинге, затем сверь данные в wp-config.php, открой базу через phpMyAdmin, проверь таблицы, префикс и права пользователя.

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

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

Если ошибка подключения к базе данных сопровождается белым экраном, критической ошибкой, ошибкой 500 или проблемами с админкой, используй общую инструкцию: WordPress не работает — что делать и как провести диагностику.

автор блога

Олег Михневич

Меня зовут Олег, я автор блога OLEGWEB.RU, где делюсь практическим опытом по WordPress, хостингу и SEO. Подробнее о моём опыте и пути — на странице «Обо мне».

Я в телеграм
Поделитесь в соцсетях? Благодарю ✌
5 2 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Elementor

Разработка сайтов

Дизайн

Wordpress

Интернет-магазин

Лендинг

Поддержка сайтов

Верстка сайтов

Мобильная версия

Контакты

Олег

Онлайн

Связаться со мной проще всего через мессенджеры:

Мои каналы
Telegram-дневник. Мысли, наблюдения, жизнь.

Задать вопрос

Если нужны уточнения или помощь — напишите. Отвечу подробно и помогу с любыми вопросами.

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x