Почему штатное средство резервного копирования 1С перестало создавать ZIP-архивы и как это исправить?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом
← На главную

Многие пользователи и администраторы после обновления конфигураций на платформе 1С:Предприятие 8.3 сталкиваются с неприятным сюрпризом: штатное средство резервного копирования корректно выгружает файл базы данных, но перестает упаковывать его в zip-архив. В результате место на диске расходуется крайне нерационально, а процесс подготовки копий становится неудобным. Давайте разберемся, в чем кроется причина и как вернуть привычный функционал.

Выясняем причину: почему архивация перестала работать

Проанализируем ситуацию: в более ранних версиях конфигураций механизм архивации работал стабильно вне зависимости от объема базы. Однако в актуальных релизах разработчики добавили проверку размера файла 1Cv8.1CD. В программном коде штатного скрипта резервного копирования теперь присутствует условие, ограничивающее сжатие.

Логика работы скрипта выглядит примерно следующим образом:


if (fileDB.size / 1024 / 1024 > 2000) {
    log("Размер файла 1Cv8.1CD превышает 2 Гб, поэтому сжатие в zip не используется.");
}

Это означает, что если ваша база данных превышает порог в 2 Гб, встроенный механизм автоматически отключает функцию сжатия, чтобы избежать зависаний или ошибок при обработке больших объемов данных. Это не является ошибкой в классическом понимании — это осознанное ограничение платформы, которое начало проявляться после обновления кода конфигурации.

Решение 1: использование внешних скриптов (батников)

Наиболее надежным и профессиональным способом решения проблемы является вынос процесса архивации за пределы 1С. Встроенные средства предназначены для простых задач, но для баз весом в несколько гигабайт лучше использовать специализированный софт, например, 7-Zip. Это позволяет избежать ограничений конфигуратора и выполнять сжатие гораздо эффективнее.

Разберем, как автоматизировать этот процесс с помощью командного файла .bat:

  1. Создайте текстовый файл и сохраните его с расширением .bat.
  2. Добавьте в него команду вызова архиватора, например:
    
    "C:\Program Files\7-Zip\7z.exe" a -tzip "D:\Backups\Backup.zip" "C:\Base1C\1Cv8.1CD"
    
  3. Установите этот файл в качестве задания для последнего пользователя, выходящего из системы, либо настройте его запуск через планировщик задач Windows.

Этот метод позволяет полностью игнорировать внутренние ограничения 1С, так как архивация происходит на уровне операционной системы.

Решение 2: доработка конфигурации через расширения

Если вы принципиально хотите использовать встроенный механизм 1С, существует вариант с использованием Расширения конфигурации. Это позволяет «пропатчить» функцию, отвечающую за проверку размера файла, не меняя основную конфигурацию.

Важно понимать: это решение является временным. При каждом обновлении конфигурации или платформы логика проверки может измениться, и расширение потребует актуализации кода. Метод заключается в создании расширения, которое переопределяет процедуру архивации, где программно увеличивается допустимый лимит с 2 Гб до необходимого вам значения.

Решение 3: выгрузка базы в формат DT

Часто в обсуждениях предлагают использовать выгрузку в dt-файл. Хотя это кажется удобным, важно помнить о предостережениях фирмы 1С:

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

Итоги и рекомендации

Проанализировав ситуацию, мы пришли к выводу, что проблема носит технический характер и связана с обновлением политик безопасности работы с файлами больших объемов. Чтобы обеспечить сохранность данных и оптимизировать место на диске, мы рекомендуем:

  1. Перейти на использование 7-Zip через командную строку — это самый быстрый и стабильный способ для файловых баз любого размера.
  2. Если вы используете файловый вариант, всегда держите резервные копии на другом физическом носителе.
  3. Периодически проверяйте целостность файла 1Cv8.1CD с помощью утилиты chdbfl.exe, чтобы быть уверенными, что даже «успешный» бэкап можно будет развернуть в случае необходимости.

Не пытайтесь бороться с ограничениями платформы путем постоянного изменения кода конфигурации — лучше вынести инфраструктурные задачи резервного копирования на уровень системного администрирования.

← На главную