Перейти к основному контенту

Ошибка DB Query в Bitrix

В этой статье мы расскажем, из-за чего возникает ошибка «DB query error, please try later» в Bitrix и как её исправить на виртуальном хостинге.

Почему возникает ошибка

Ошибка DB query error, please try later возникает на CMS Битрикс.

Также встречаются варианты:

  • Mysql connect error [localhost]: (2002) No such file or directory (400),
  • DB query error,
  • Got error 28 from storage engine.

Эта проблема связана с базой данных сайта: к ней поступает слишком много обращений — больше, чем сервер БД может обработать.

Вот несколько распространённых причин этой ошибки:

  • не хватает дискового пространства на хостинге. В Битрикс встроено автоматическое резервное копирование. Эта опция создаёт резервные копии в папке /bitrix/backup/ и постепенно занимает место на диске. Чтобы решить проблему, необходимо удалить старые резервные копии;
  • повреждена база данных MySQL. В этом случае нужна резервная копия БД: восстановите копию с датой, когда сайт работал корректно;
  • неверные данные для подключения к БД. Настройки подключения к базе данных хранятся в файле /bitrix/php_interface/dbconn.php. Если указаны неверные логин, пароль или название базы данных, сайт не может к ней подключиться. Из-за этого возникает ошибка.

Как включить отображение ошибок через панель управления

Чтобы понять, чем именно вызвана ошибка, нужно посмотреть её полное описание на сайте. Для этого включите debug-режим.

Debug-режим (режим отладки) — режим, который используют разработчики для проверки кода. Он позволяет увидеть полный текст ошибки и исправить её.

Для этого:

  1. 1.
    Войдите в панель управления ISPmanager. Если внешний вид вашей панели управления отличается от представленного в инструкции, кликните в левом нижнем углу «Старый интерфейс».
  2. 2.

    Перейдите в раздел Главное — Менеджер файлов:

    включить debug в ispmanager 1

  3. 3.

    Перейдите в папку php_interface и дважды кликните по файлу dbconn.php:

    включить debug в ispmanager 2

  4. 4.

    В блоках $DBDebug и $DBDebugToFile замените параметр «false» на «true» и нажмите Ok:

    включить debug в ispmanager 3

  5. 5.

    При переходе на сайт вы увидите текст ошибки. Он выделен красным цветом:

    включить debug в ispmanager 4

Как включить отображение ошибок через SSH-подключение

  1. 1.
    Подключитесь к серверу по SSH.
  2. 2.

    Выполните команду:

    vim ~/www/domain.ru/bitrix/php_interface/dbconn.php

    Где domain.ru — корневая папка сайта.

  3. 3.

    Кликните клавишу i, чтобы включить режим редактирования, затем в полях $DBDebug и $DBDebugToFile замените параметр «false» на «true»:

    включить debug по ssh 1

    Чтобы выйти из режима редактирования, нажмите Esc. Затем введите команду :qw и нажмите Enter:

    включить debug по ssh 2

Как освободить место для работы БД через панель управления

Для того чтобы освободить место на хостинге, нужно очистить папку /bitrix/backup/. Для этого:

  1. 1.
    Войдите в панель управления ISPmanager. Если внешний вид вашей панели управления отличается от представленного в инструкции, кликните в левом нижнем углу «Старый интерфейс».
  2. 2.

    Перейдите в папку /bitrix/backup/. Выделите файлы, которые вам не нужны, и нажмите Удалить:

    освободить место через ispmanager 1

  3. 3.

    Чтобы подтвердить удаление, нажмите Ok:

    освободить место через ispmanager 2

Как освободить место для работы БД через SSH-подключение

  1. 1.
  2. 2.

    Выполните команду:

    cd ~/www/domain.ru/bitrix/backup/

    Где domain.ru — корневая папка вашего сайта.

  3. 3.

    Чтобы удалить ненужные файлы, выполните команду:

    rm domain.ru_20210512_104800_full_da85bdfa.tar domain.ru_20210512_104813_full_1463208a.tar domain.ru_20210512_104925_full_cdf5d6e0.tar

Как изменить данные для подключения к БД через панель управления

Проблема с подключением к базе данных может возникнуть, если в файле /bitrix/php_interface/dbconn.php указаны некорректные логин, пароль или имя базы данных. Чтобы изменить настройки подключения:

  1. 1.
    Войдите в панель управления ISPmanager. Если внешний вид вашей панели управления отличается от представленного в инструкции, кликните в левом нижнем углу «Старый интерфейс».
  2. 2.

    Перейдите в раздел Главное — Базы данных:

    изменить данные к бд через ispmanager 1

  3. 3.

    Кликните по базе данных и выберите Пользователи:

    изменить данные к бд через ispmanager 2

  4. 4.

    Кликните по пользователю базы данных и выберите Изменить:

    изменить данные к бд через ispmanager 3

  5. 5.

    Кликните на значок «глаз», чтобы увидеть пароль. Проверьте имя пользователя и пароль, затем нажмите Отмена:

    изменить данные к бд через ispmanager 4 DB Query Error что это значит

  6. 6.

    Перейдите в раздел Главное — Менеджер файлов:

    изменить данные к бд через ispmanager 5

  7. 7.

    Откройте папку php_interface. Кликните по файлу dbconn.php и нажмите Изменить:

    изменить данные к бд через ispmanager 6

  8. 8.

    Заполните поля:

    • $DBLogin — укажите имя пользователя базы данных,
    • $DBPassword — введите пароль пользователя БД,
    • $DBName — укажите имя базы данных.

    Затем нажмите Ok:

    изменить данные к бд через ispmanager 7

  9. 9.

    Битрикс хранит настройки подключения не только в файле dbconn.php, но и в файле .settings.php. Перейдите в папку /bitrix/ и дважды кликните по файлу .settings.php:

    изменить данные к бд через ispmanager 8

  10. 10.

    Заполните поля:

    • database — укажите имя базы данных,
    • login — введите логин пользователя БД,
    • password — укажите пароль пользователя БД.

    Затем нажмите Ok:

    изменить данные к бд через ispmanager 9

Как изменить данные для подключения к БД через SSH-соединение

Перед изменением данных проверьте имя БД, логин и пароль. Чтобы изменить данные для подключения:

  1. 1.
  2. 2.

    Выполните команду:

    vim ~/www/domain.ru/bitrix/php_interface/dbconn.php

    Где domain.ru — корневая директория сайта.

  3. 3.

    Кликните клавишу i, чтобы включить режим редактирования. Заполните поля:

    • $DBLogin — укажите имя пользователя БД,
    • $DBPassword — введите пароль пользователя базы,
    • $DBName — укажите название базы данных.

    изменить данные к бд через ssh 1

    Затем нажмите Esc, чтобы выйти из режима редактирования, введите команду :qw и нажмите Enter.

  4. 4.

    Настройки подключения к базе данных хранятся ещё в одном файле — .settings.php. Чтобы открыть его, выполните команду:

    vim ~/www/domain.ru/bitrix/.settings.php

    Где domain.ru — корневая папка сайта.

  5. 5.

    Нажмите на клавишу i, чтобы включить режим редактирования. Заполните поля:

    • database — введите имя базы данных,
    • login — укажите имя пользователя БД,
    • password — введите пароль пользователя БД.

    изменить данные к бд через ssh 2

    Чтобы выйти из режима редактирования, нажмите Esc. Затем введите команду :qw и нажмите Enter.

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

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0