#Что означает ошибка
Ошибка подключения к БД
Ошибка 1С-Битрикс «Ошибка соединения с базой данных» означает, что сайт не может подключиться к MySQL: неверные параметры, остановлен сервис, закончились подключения или повреждена база.
Параметры подключения хранятся в двух файлах.
Проверьте их в первую очередь.
Проверьте настройки /bitrix/php_interface/dbconn.php и .settings.php, статус MySQL и свободное место на диске.
#Причины и решения
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Неверные данныеdbconn. | Ошибка. | Исправьте. |
| MySQL остановленСлужба. | Ошибка. | Запустите. |
| Нет местаДиск. | Ошибка. | Освободите. |
| Лимит соединенийMySQL. | Ошибка. | Увеличьте. |
#Пошаговое решение
- Проверьте dbconn.php и .settings.phpВ файловом менеджере сайта «1С-Битрикс» откройте
/bitrix/php_interface/dbconn.phpи/или/bitrix/.settings.php, в зависимости от версии, и найдите параметры подключения БД. Сверьте хост, имя базы и пользователя с панелью хостинга; не показывайте пароль в публичном журнале и не меняйте оба источника наугад. - Проверьте подключение из консолиВ защищённом терминале сервера проверьте подключение командой
mysql -h фактический_хост -u фактический_пользователь -p фактическая_база -e "SELECT 1". Если возвращается 1045 — разбирайте пароль/права; если 2002/2003 — адрес и службу. Не выполняйте тест под root, когда приложение использует отдельного пользователя. - Проверьте работу MySQLЕсли БД локальная и вы управляете сервером, выполните
systemctl status mysqlилиmariadbи прочитайте журнал. При доступе только к хостингу используйте инструменты панели; не перезапускайте общий MySQL без согласованного обслуживания других сайтов. - Проверьте место на дискеПроверьте
df -h,df -iдля раздела данных и журнал MySQL на OOM/отказ записи; нехватка места может выглядеть как ошибка подключения. При переполнении не удаляйте файлы InnoDB и binlog без согласованного восстановления: сначала создайте безопасную копию и выясните источник. - Восстановите таблицыЕсли ошибка указывает именно на повреждение таблицы, определите движок через
SHOW TABLE STATUSи сделайте дамп БД. Автоматическийmysqlcheck --auto-repairне является безопасным универсальным решением для InnoDB. При необходимости восстановите затронутые данные из проверенной резервной копии, затем откройте главную, админку и страницы каталога.
#Параметры
Откройте /bitrix/php_interface/dbconn.php (переменные $DBHost, $DBLogin, $DBPassword, $DBName) и /bitrix/.settings.php (массив connections). Значения должны совпадать с реальными данными. Проверьте подключение из консоли: mysql -h localhost -u user -p имя_базы.
#Сервер
Убедитесь, что MySQL работает: systemctl status mysql или mariadb. Проверьте свободное место на диске df -h — при переполнении MySQL останавливается. Проверьте лимит max_connections и max_user_connections. Смотрите журнал /var/log/mysql/error.log.
#Восстановление
Если таблицы повреждены, выполните mysqlcheck -u user -p --auto-repair имя_базы. В Битрикс есть восстановление в /bitrix/admin/. При необходимости восстановите базу из резервной копии. На хостинге используйте панель (phpMyAdmin) для проверки. Включите режим отладки в .settings.php (exception_handling → debug => true) для вывода причины.
systemctl status mysqldf -h# Прежде чем ремонтировать таблицы, определите движок и сделайте резервную копию.#Как проверить результат
После исправления откройте главную страницу и административную часть /bitrix/admin/. Если сайт заработал, проверьте работу в панели «Настройки → Производительность → Панель производительности» и очистите кэш («Настройки → Автокеш»). Убедитесь, что резервная копия базы создана и сохранена отдельно от сервера. Если ошибка возникает периодически, посмотрите нагрузку на MySQL (SHOW PROCESSLIST;) и оптимизируйте медленные запросы, либо увеличьте max_connections в конфигурации.