Пошта
Пошук і усунення несправностей

Error establishing a database connection: як знайти причину

З'єднання з базою даних не встановлюється

Коли WordPress показує лише речення Error establishing a database connection, файли сайту на місці, а вміст зберігається в базі даних. Просто з'єднання між ними не встановлюється. Це добра новина, бо нічого не втрачено, але й погана, адже сайт повністю недоступний, доки з'єднання не відновиться.

Коротко

  • Вміст зберігається в базі даних, хоча на екрані видно лише текст помилки.
  • Найчастіші причини: неправильні облікові дані, перевантажений сервер бази даних і заповнений диск.
  • Не перевстановлюйте WordPress. Це не відновить з'єднання, але може знищити вміст.

1. Перевірте, чи адмінпанель показує іншу помилку

Відкрийте /wp-admin. Якщо й там та сама помилка, з'єднання відсутнє повністю. Якщо адмінпанель повідомляє, що базу даних потрібно відновити, ідеться про пошкоджену таблицю, а не про з'єднання, і тоді переходьте одразу до пункту 4.

2. Перевірте облікові дані у файлі wp-config.php

Файл wp-config.php у кореневій папці сайту містить чотири рядки, за якими встановлюється з'єднання: назва бази даних, користувач, пароль і сервер. Найпоширеніша окрема причина в тому, що хтось змінив пароль бази даних у панелі керування і не оновив його в цьому файлі. Порівняйте значення з даними в панелі хостингу символ за символом. Як знайти облікові дані бази даних, описано в посібнику керування базою даних.

Для сервера значення зазвичай localhost. Якщо під час перенесення хтось замінив його на IP-адресу або ім'я віддаленого сервера, з'єднання обривається, навіть якщо все інше правильно.

3. Перевірте, чи сервер не перевантажений

Сервер бази даних може відхиляти нові з'єднання, якщо відкритих забагато. Це проявляється так: сайт час від часу працює і падає в години пік. Причиною часто є важкий плагін або сплеск трафіку. Якщо симптоми змінюються щогодини, справа майже напевно в навантаженні, а не в облікових даних.

4. Відновіть пошкоджену таблицю

Несподіване перезавантаження може залишити таблицю в незавершеному стані. У WordPress для цього є власний режим відновлення: додайте у файл wp-config.php рядок define('WP_ALLOW_REPAIR', true); і відкрийте адресу /wp-admin/maint/repair.php. Видаліть рядок одразу після відновлення, бо ця сторінка доступна без входу.

5. Перевірте дисковий простір

Заповнений диск без жодного попередження зупиняє роботу бази даних, бо вона не може записати власні тимчасові файли. Подивіться в панелі керування, скільки місця залишилося. Найчастіше простір поглинає плагін резервного копіювання, який зберігає копії на тому самому диску.

6. Якщо помилка з'явилася після перенесення

Під час перенесення легко забути або імпортувати базу даних, або надати права користувачеві на новому місці. Перевірте, що база даних існує, що в ній є таблиці і що користувач має права саме на цю базу даних.

Чого не варто робити

Не перевстановлюйте WordPress. Нова інсталяція створює порожню базу даних і може перезаписати стару, і тоді вміст буде втрачено по-справжньому. Зробіть резервну копію, перш ніж щось пробувати, див. резервне копіювання сайту.

Якщо не хочете робити це самостійно

Ми з'ясуємо, що саме сталося, обірване з'єднання чи пошкоджена база даних, і відновимо роботу сайту. Також перевіримо, чому з'єднання обірвалося, бо інакше та сама причина повториться під час наступного піку навантаження.

Дізнайтеся, як ми ремонтуємо зламаний сайт »