Ошибка подключения к базе данных: почему возникает и как с ней бороться
- Главная
- Блог
- Инструкции
- Ошибка подключения к базе данных: почему возникает и как с ней бороться
Ошибки делают нас мудрее, вернее, их преодоление. Не так давно мы уже разбирали, как быстро и правильно пофиксить распространенные четырехсот- и пятисотые error’ы на сайте. А сегодня детальней рассмотрим ошибку подключения к базе данных, причины ее появления и способы устранения.
Первым делом
Чаще всего Database Error появляется, когда некорректно указаны параметра доступа к базе данных. Поэтому первым делом откройте конфигурационный файл в корневой папке сайта и проверьте правильность заполнения параметров host, user, password и db (в разных CMS эти названия могут немного отличаться, но суть та же). На всякий случай напоминаем расположение конфигурационных файлов для популярных CMS.
WordPress (wp-config.php)
define('DB_NAME', 'имя_базы_данных');
define('DB_USER', 'имя_пользователя');
define('DB_HOST', 'адрес_сервера');
define('DB_PASSWORD', 'пароль');
В WordPress, кстати, эту ошибку (выводится как «Error Establishing a Database Connection») также можно решить восстановлением базы данных. Для этого впишите последней строкой в конфигурационном файле:
define('WP_ALLOW_REPAIR', true);
Затем перейдите по ссылке: ваш-домен/wp-admin/maint/repair.php. Вы попадете на страницу, где можно будет восстановить (Repair Database) или восстановить с оптимизацией (Repair and Optimize Database) базу данных.
Важно!
Как только ошибка пропала, обязательно удалите из конфигурационного файла строку:
define('WP_ALLOW_REPAIR', true);
Joomla (configuration.php)
var $host = 'адрес_сервера';
var $user = 'имя_пользователя';
var $db = 'имя_базы_данных';
var $password = 'пароль';
В Joomla ошибка подключения к базе данных выводится как «Database Error: Unable to connect to the database:Could not connect to MySQL». Возможен также вариант «Database Error: Unable to connect to the database:Could not connect to database». Во втором случае, скорее всего, указан неправильный префикс для таблиц, поэтому, кроме четырех вышеуказанных параметров, проверьте также строку:
var $dbprefix = 'префикс_таблиц (чаще всего jos_)';
Drupal (sites/default/settings.php)
$db_url = 'mysql://"имя_пользователя":"пароль"@"адрес_сервера"/"имя_базы_данных";
DLE (engine/data/dbconfig.php)
define ("DBHOST", "адрес_сервера");
define ("DBNAME", "имя_базы_данных");
define ("DBUSER", "имя_пользователя");
define ("DBPASS", "пароль");
ModX (manager/includes/config.inc.php)
$database_server = 'адрес_сервера';
$database_user = 'имя_пользователя';
$database_password = 'пароль';
$dbase = 'имя_базы_данных';
1C-Битрикс (bitrix/php_interface/dbconn.php)
$DBHost = "адрес_сервера";
$DBLogin = "имя_пользователя";
$DBPassword = "пароль";
$DBName = "имя_базы_данных";
phpBB (docs/config.php)
$dbhost = 'адрес_сервера';
$dbname = 'имя_базы_данных';
$dbuser = 'имя_пользователя';
$dbpasswd = 'пароль';
Иногда ошибка подключения к базе данных появляется, когда на вашем диске не хватает свободного места. Удалите кэш и ненужные бекапы. Если ничего «ненужного» вы и так не держите, обратитесь к провайдеру за расширением диска. Еще одна возможная причина – сервер с базой данных не работает. Тут уж все претензии к вашему хостеру, пусть решает. Ну, или переходите на более качественный веб-хостинг, к нам, например. :) За грамотной консультацией по переносу в облако как небольших, так и более масштабных проектов обращайтесь 24/7.