Добрый день дорогие друзья! Статья на сегодня – как исправить ошибку в установке соединения с базой данных WordPress. Если вы достаточно времени проводите за просмотром сайтов и страниц в интернете, проще говоря, серфите, то могли неоднократно замечать эту проблему.
Ошибка в создании подключения к базе данных является одним из проклятий, которые могут быть вызваны многими причинами.
Особенно эта проблема остро встает перед новичками, которых этот факт расстраивает и они не могут ничего сделать. На одном из клиентских сайтов произошла как раз такая проблема.
Для ее выявления и устранения потребовалось минут 20. В этой статье я подробно расскажу как быстро и оперативно выявить и устранить проблему ошибки в установлении соединения с базой данных.
Важно! Перед тем как делать какие-то изменения на своем блоге, сделайте резервную копию.
Содержание
Причин для этого может быть несколько и они могут варьироваться у каждого отдельного веб мастера. Может быть, у вас неверно указаны учетные данные к базе или они были изменены, или сервер не отвечает. Может быть и так, что база повреждена. По нашему опыту можем сказать, что чаще всего ошибка происходит из – за какой-то ошибки сервера, однако могут быть и другие факторы. Давайте взлянем, как найти их и устранить.
Первое, в чем вам нужно убедиться –получаете ли вы ошибку как со стороны фронт-энда (сайта в браузере), так и со стороны бэкэнда (внутренняя часть, как правило Wp-admin).Если зафиксировано в обоих случаях, тогда приступаем к следующему шагу. Если вы получаете ошибку wp-admin что –то вроде «Одна или несколько таблиц базы данных недоступны. База данных нуждается в восстановлении», тогда вам необходимо исправить эти ошибки в базе данных.
Сделать это вы можете следующим способом (добавив строчку в файл wp-config.php ):
1
|
define('WP_ALLOW_REPAIR', true);
|
Результаты, проделанных действий вы можете увидеть зайдя по адресу:
1
|
http://www.vash-sait.com/wp-admin/maint/repair.php
|
Помните, что пользователю не нужно быть зарегистрированным, чтобы получить доступ к этой функции. Это нужно потому, что его основная цель заключается в восстановлении поврежденной базы данных, а пользователи часто не могут войти, когда она повреждена. Поэтому, как только вы произвели восстановление и оптимизацию базы данных, убедитесь что вы удалили этот участок из файла wp-config.php
Если и это не решит вашу проблему, тогда продолжайте читать статью.
Он является, вероятно, самым важным и главным файлом во всей установке блога на WordPress. Это то место, где вы можете уточнить детали соединения с базой данных. Если вы меняли пароль суперпользователя или пароль пользователя базы данных, то вам нужно произвести изменения в нем также. Перепроверьте все ваши пароли, вот их пример:
1
2
3
4
|
define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');
|
Помните, что значение DB_HOST не всегда может быть локальным. В зависимости от хоста, он может различаться. Лично мой блог использует для хоста сервер sweb.ru, но просмотрев файл, у меня там стоит localhost. Вот пример скриншот:
Некоторые люди предположили, что исправили ситуацию, заменив localhost на серию цифр IP. Его часто можно увидеть, запуская блог WordPress локальном компьютере (НЕ ХОСТИНГЕ). В России мы часто используем DENWER, в зарубежном интернете есть и такие как MAMP, XAMP, там значение DB_HOST может выглядеть примерно так:
1
|
define('DB_HOST', '127.0.0.1:8889');
|
IP очень разнообразен у разных сервисов хостинга.
Если все в этом файле правильно, тогда можем справедливо рассуждать, что проблема кроется на стороне сервера.
Часто можно заметить, что ошибка в установке соединения с базой данных может возникать из – за возросшего объема трафика на сайт. В принципе, ваш веб сервер просто не в состоянии справиться с нагрузкой (особенно когда вы находитесь на виртуальном хостинге).
Сайт может работать крайне медленно и сыпать пользователей ошибками. Тогда вам нужно позвонить или оставить тикет в службу поддержки хостинга и попросить их разобраться с данной проблемой на их стороне.
Есть и другой вариант – запустить простой тестовый сайт и посмотреть, выдает ли он ошибку. Если они также получают такую же ошибку, то тогда что-то не так с вашим Mysql сервером. Это в случае, если вы сами создаете и запускает Mysql базу данных, не автоматически при установке CMS. Тут разница есть.
Если у вас нет другого сайта на этой же учетной записи хостинга, тогда войдите внутрь его панели cPanel и попробуйте получить доступ к phpmyadmin и подключить базу данных. Если вы можете подключиться, то нужно проверить, имеет ли пользователь доступ. Создайте новый файл с именем testconnection.php и вставьте в него следующий код:
1
2
3
4
5
6
7
8
|
<?php
$link = mysql_connect('localhost', 'root', 'password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
|
Убедитесь в том, что заменили имя пользователя и пароль на свой. Если подключение прошло успешно, значит было недостаточно прав доступа. Давайте вернемся к нашему файлу wp-config.php, чтобы убедиться что в нем все правильно и нет опечаток. (повторное сканирование опечаток).
Важно отметить, что не всегда они смогут сработать и у вас. Используйте на свой страх и риск и убедитесь, что у вас есть резервная копия, если что-то пойдет не так.
Диппак Миттал (один из разработчиков) заявил, что его клиент получал ошибку, что база нуждается в восстановлении. Даже после этого ошибка не исчезла. Он пробовал различные вещи и в конце концов, вопрос был решен в урле сайта. Он пошел в phpmyadmin и выполнил следующий запрос:
1
|
UPDATE wp_options SET option_value='YOUR_SITE_URL' WHERE option_name='siteurl'
|
Где нужно указать свой адрес сайта вместо siteurl.
Cutewonders предположил, что они убрали содержимое active_plugins в wp_options таблице и отредактировали содержимое таблицы recently_edited. В основном это, как оказалось, решило проблему.
Sachinum предположил, что он был в состоянии подключиться к базе данных с помощью testconnection.php, поэтому он изменил пользователя wp-config.php от имени суперпользователя (root user). WordPress начал прекрасно работать.
Тогда он вернул настройки обратно в базу данных пользователя, и это продолжает работать. Он не мог понять, что случилось, но пришел к выводу, что это была опечатка.
На этом все! Увидимся в следующих уроках и полезных статьях. До скорых встреч.
Я подготовил для Вас обращение, с ним можете ознакомиться тут
Макс Метелев - автор, блоггер, актер местного театра, ведущий городских мероприятий. Делюсь только лучшим!