Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

SQL_ERR_LOG_FULL_9002 1С:Предприятие и СУБД

Ошибка MS SQL: The transaction log is full due to LOG_BACKUP — решение

Обновлено: 26.08.2026 · Официальная документация ↗
  • 1С полностью останавливает работу с ошибкой: The transaction log for database 'ib_name' is full due to 'LOG_BACKUP' (Error 9002).
  • Файл журнала транзакций с расширением .LDF занял все свободное место на диске сервера.
  • Попытки пользователей записать любой документ завершаются аварийным отказом СУБД.
  • Простое удаление данных внутри 1С не уменьшает физический размер файла на диске.

Почему лог не очищается сам

По умолчанию базы 1С в MS SQL создаются в режиме восстановления Full (Полная). В этом режиме SQL Server бережно записывает каждое действие в LDF-файл и никогда не стирает его, пока администратор не настроит регулярное резервное копирование самого лога транзакций (Transaction Log Backup).

Экстренное решение: Сжатие лога транзакций через SSMS

  1. Откройте SQL Server Management Studio (SSMS) и подключитесь к серверу.
  2. Нажмите кнопку New Query (Создать запрос) и выполните следующий T-SQL скрипт (замените Base1C на имя вашей базы):
    USE [Base1C];
    GO
    -- 1. Переключаем базу в простую модель (Simple), чтобы сбросить очередь логов
    ALTER DATABASE [Base1C] SET RECOVERY SIMPLE;
    GO
    -- 2. Сжимаем физический LDF-файл до разумных 1000 МБ
    DBCC SHRINKFILE (N'Base1C_Log' , 1000);
    GO
    -- 3. Возвращаем модель Full (если делаете бэкапы логов) или оставляем Simple
    ALTER DATABASE [Base1C] SET RECOVERY FULL;
    GO
  3. Если вы не знаете логическое имя файла лога (Base1C_Log), выполните команду sp_helpfile.

Как предотвратить проблему навсегда

  • Вариант А: Если вам не требуется восстановление базы на конкретную секунду времени — оставьте режим Simple в свойствах базы (Properties → Options → Recovery model = Simple). В этом режиме лог очищается автоматически.
  • Вариант Б: Если нужен режим Full — создайте план обслуживания (Maintenance Plan), который делает бэкап лога транзакций каждые 15–30 минут.
💡 Практика специалистов: Если на сервере нет выделенного администратора БД (DBA), переведите базы 1С в модель восстановления Simple и настройте ежедневное полное ночное резервное копирование (Full Backup) средствами SQL.

Частые вопросы (FAQ)

Можно ли просто удалить LDF файл с диска в Проводнике Windows?

Категорически нет! При удалении файла лога база перейдет в состояние Recovery Pending или Suspect, и 1С перестанет открываться.

В чем разница между моделями Full и Simple для 1С?

В Simple модель база сбрасывает транзакции после фиксации, экономя место на диске. В Full модель база позволяет восстановить данные на любой момент времени в прошлом, но требует настройки постоянных бэкапов лога.

Почему после удаления половины документов LDF файл не уменьшился?

Операция массового удаления — это тоже транзакция. Она требует еще больше места в логе для записи информации об удаленных строках.

Как часто нужно делать Shrink (сжатие) базы?

Регулярно делать сжатие не рекомендуется, так как это вызывает сильнейшую фрагментацию индексов. Сжатие делают только разово при аварийном разрастании файла.

Полезные материалы
Рекомендуем