MySQL WordPress Сайт

Как исправить ошибку Error Establishing a Database Connection в WordPress

Как исправить ошибку Error Establishing a Database Connection в WordPress

Вступление

WordPress написан на PHP и работает с системой управления базами данных MySQL. Каждый раз, когда страница вашего сайта посещается, она создаётся на лету. PHP-код обращается к вашей базе данных в MySQL и получает всю необходимую информацию для построения страницы. Один PHP-запрос нужен для того, чтобы написать название, другой, чтобы взять имя автора и ещё другой для получения самой статьи и так далее. Ошибка Error establishing a database connection. (Ошибка подключения к базе данных) означает, что по какой-то причине PHP-код не смог получить доступ к базе данных в MySQL для получения необходимых деталей для создания страницы.

Существует много причин, которые могу привести к подобной проблеме подключения сайта к базе данных, но все их можно в основном разделить на три категории:

  1. Ваша база данных повреждена. Что угодно может вызвать повреждение вашей базы данных WordPress, наиболее распространённая причина – это загрузка “плохого” плагина.
  2. Данные для подключения к базе данных неверные. Ваша база данных WordPress использует доступы для входа – имя пользователя (username) и пароль. Эти доступы отличные от тех, что нужны для входа в вашу панель управления на хостинге. Если доступы недавно были изменены или, если ваш сайт на WordPress был перенесен на новый хостинг-аккаунт или в другому хостинг-провайдеру, ваш сайт не сможет получить доступ к базе данных со старыми доступами. По нашему опыту, это наиболее распространённая причина ошибки.
  3. Сервер, на котором размещён ваш сайт недоступен. Сервер вашей базы данных может быть недоступен из-за какой-то проблемы или ошибки на стороне вашей хостинговой компании либо пошёл большой трафик и сервер не смог его обработать.

В этом руководстве, вы узнаете как выяснить причину ошибки Error establishing a database connection в WordPress и как её исправить.

Что понадобится

Прежде чем приступить к руководству убедитесь в следующем:

  • Сайт на WordPress был ранее рабочим
  • Доступ к панели управления в вашем хостинг аккаунте, где установлен WordPress, есть
  • Права доступа на запись к файлам установки вашего сайта на WordPress
  • Есть основы понимания структуры файлов WordPress

Шаг 1 – Определение причины возникновения ошибки Error Establishing a Database Connection

Первое, в чём нужно убедиться, что вы получаете одинаковые ошибки, как на основной части вашего сайта (frontend) yoursite.com, так и на админ части (backend) yoursite.com/wp-admin (замените yoursite.com на URL домашней страницы вашего сайта на WordPress). Если сообщение об ошибке одинаковое на обоих частях сайта: Error establishing a database connection, то переходите к Шагу 2. Но, если ваш сайт недоступен и вы получаете совершенно другое сообщение об ошибке при попытке логина: One or more database tables are unavailable. The database may need to be repaired (Одна или несколько таблиц недоступны. База данных должна быть восстановлена), тогда вам нужно восстанавливать базу данных.

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

Вы можете найти wp-config.php в вашей корневой файловой директории WordPress.

Файл wp-config.php находится в корне директории WordPress

Откройте wp-config.php, добавьте следующую строку кода в конце файла и сохраните изменения:

Эта строка разрешит вам оптимизацию и восстановление вашей базы данных, перейдя по пути yourwebsite.com/wp-admin/maint/repair.php (где yourwebsite.com нужно заменить на ваш URL).

Первый шаг в устранении ошибки Error establishing a database connection

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

Обратите внимание, что страница восстановления базы данных не защищена логином и кто угодно может зайти по адресу yourwebsite.com/wp-admin/maint/repair.php.

Как только почините базу данных, удалите строку кода define( 'WP_ALLOW_REPAIR', true ); из файла wp-config.php. Это закроет доступ к странице восстановления и предотвратит доступ кого-либо постороннего к вашей базе данных.

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

Шаг 2 – Проверка настроек подключения к базе данных в wp-config.php

Если предыдущий шаг не помог, то следующее, что вам надо проверить – это настройки в вашем файле wp-config.php.

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

Если файл wp-config.php был закрыт после предыдущего шага, то откройте его в Файловом Менеджере в панели управления хостингом вашего аккаунта или подключитесь по FTP. Перейдите в директорию, где установлен WordPress и найдите файл wp-config.php. Откройте его для редактирования.
В файле вы увидите учётные данные для входа в вашу базу данных ближе к началу файла. Они будут выглядеть, как показано ниже:

  1. Имя базы данных (DB_NAME)
  2. Имя пользователя для входа (DB_USER)
  3. Пароль для входа (DB_PASSWORD)
  4. Сервер базы данных (DB_HOST)

Если какое-то из этих значений неверно, WordPress не сможет подключиться к базе данных.

Наилучший и прямой путь убедиться, что детали верны, сравнить их с фактическими данными Базы Данных MySQL. Для этого в панели управления своего хостинг аккаунта перейдите в раздел Базы Данных MySQL

На странице Базы данных MySQL найдите таблицу Список текущих баз данных MySQL и пользователей. В ней собраны все базы данных и пользователи, готовые к использованию вашим сайтом. Информацию, которую мы ищем находятся в колонках Базы Данных MySQL и Пользователь MySQL. Нужно сравнить значения, указанные в этих двух колонках и значения DB_NAME и DB_USER в файле wp-config.php.

Сравнение значений в файле wp-config.php с актуальной информацией в Текущих базах данных.

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

Проверка значения имени базы данных

Название базы данных

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

Проверка значения имени пользователя для входа в базу данных

Вторым пунктом проверьте колонку Пользователи MySQL. В этом примере, можно быстро заметить, что в колонке Пользователь MySQL и в файле wp-config.php разные имена – в последнем потерялся в конце ‘0’. Как только обновите значение DB_USER с somuvnet_wp67 на somuvnet_wp670 неверное имя пользователя будет исправлено. Обязательно обновите свой сайт WordPress, чтобы проверить разрешилась ли ошибка Error establishing a database connection.

Проверка значения сервера базы данных

Если приведенные выше шаги не помогли исправить ошибку Error establishing a database connection, проверьте на правильность ещё два момента: сервер базы данных или пароль для входа в систему. Значение сервера базы данных обычно указывается вместе с деталями аккаунта. В нашем примере видно, что значение DB_HOST в файле wp-config.php соответствует значению, указанному в колонке MySQL Сервер в таблице Список текущих баз данных MySQL и пользователей.

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

Если вы внесли изменения значение сервера базы данных, обновите свой сайт на WordPress для проверки, привело ли это в исправлению ошибки.

Проверка значения пароля для входа

Пароль для входа в систему можно быстро обновить в панели управления в разделе Базы Данных MySQL -> Список текущих баз данных MySQL и пользователей -> Сменить пароль.

Кнопка Сменить пароль

  1. Выберите пользователя в таблице, для которого хотите изменить пароль и нажмите Сменить пароль.
  2. Здесь вы можете либо использовать значение DB_PASSWORD из файла wp-config.php, либо генерировать новый пароль, используя кнопку Генерировать. Если вы выбрали вариант – генерировать новый пароль, обязательно обновите значение DB_PASSWORD в файле wp-config.php вновь генерированным паролем.
  3. Нажмите Изменить.

На этом проверки с файлом wp-config.php завершаются. Обновите ваш сайт на WordPress для проверки, исправлена ли уже ошибка. В случае, если ошибка Error establishing a database connection всё ещё осталась, переходите к заключительному шагу.

Шаг 3 – Обращение к хостинговой компании

Если вы прошли все предыдущие шаги для решения проблемы и ваш сайт до сих пор отображает сообщение об ошибке Error establishing a database connection, проблема скорее всего на стороне вашего хостинг провайдера. Обратитесь в службу поддержки вашего хостинга, предоставьте им все детали ошибки и предпринятые вами действия для её решения, и они смогут вам помочь, определив причину ошибки.

Заключение

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

Добавить комментарий

Нажмите здесь, чтобы оставить комментарий

Присоединяйтесь к тысячам других подписчиков по всему миру

и получайте самые свежие руководства на вашу электронную почту

Пожалуйста, подождите...

Спасибо за подписку!

Начните экономить сейчас!

Хостинг и доменное имя от

руб.95
00