К статье
Практический материал

Администрирование · 12 мин

Как сжать базу 1С 8.3 для отправки по почте

Как выгрузить и сжать базу 1С 8.3 в архив для отправки по почте: выгрузка DT, сжатие ZIP и 7-Zip, разбиение на части, проверка целостности архива.

База 1С 8.3 в файловом варианте — это каталог с файлом 1Cv8.1CD, который нередко занимает несколько гигабайт. Отправить такой файл по электронной почте напрямую невозможно: большинство почтовых сервисов ограничивают вложение объёмом порядка 20–25 МБ. Поэтому задача сводится к двум этапам: подготовить компактную копию базы и упаковать её в архив, который пройдёт ограничение почты или будет передан через файлообменник.

Правильный способ уменьшить базу — не просто заархивировать рабочий каталог, а сначала выполнить выгрузку в файл формата DT через конфигуратор. Файл выгрузки обычно заметно меньше исходного файла базы, потому что в нём отсутствуют временные данные, свободное место внутри таблиц и служебные структуры. Дополнительное сжатие архиватором даёт ещё один выигрыш, иногда в несколько раз.

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

Почему база 1С так много весит и что реально уменьшается

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

При выгрузке в DT платформа читает только актуальные данные и записывает их в новый файл последовательно, без пустот и служебного «мусора». Именно поэтому DT-файл почти всегда меньше исходной базы. Архиватор затем убирает избыточность в самих данных: повторяющиеся фрагменты текстов, типовые структуры таблиц и вложенные файлы, которые хорошо поддаются сжатию.

Важно понимать границу: если основной объём базы составляют уже сжатые вложения — фотографии JPEG, PDF-документы, сканы, — то архиватор даст небольшой выигрыш, потому что эти форматы сжаты изначально. В таком случае основной эффект даст именно выгрузка в DT, а не архивирование.

Размер 1Cv8.1CDИсходный объём базы

Откройте каталог базы и посмотрите размер файла — это отправная точка для оценки

Много вложений в базеФото, PDF, сканы документов

Слабо сжимаются архиватором, основной выигрыш даст выгрузка в DT

База давно не обслуживаласьНе делались выгрузки и тестирование

DT-выгрузка, скорее всего, будет заметно меньше исходного файла

Лимит почтыОбычно около 20–25 МБ на вложение

Уточните ограничение своего почтового сервиса до начала упаковки

Подготовка: что сделать до выгрузки

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

Убедитесь, что на диске достаточно свободного места. Ориентировочно потребуется объём, равный размеру базы, плюс место под DT-файл и архив — суммарно запас в полтора-два размера базы считается безопасным. Нехватка места в середине выгрузки приводит к обрыву процесса и битому файлу.

Сделайте резервную копию исходного каталога базы простым копированием. Сама выгрузка не изменяет исходную базу, но копия страхует от любых ошибок на последующих этапах — например, если кто-то случайно удалит или переместит файлы.

Способ 1. Выгрузка базы в файл DT через конфигуратор

Это рекомендуемый способ, когда базу нужно передать разработчику, в техподдержку или на другой компьютер. Откройте базу в режиме «Конфигуратор» под пользователем с полными правами. В меню выберите «Администрирование» → «Выгрузить информационную базу», укажите путь и имя файла с расширением .dt и дождитесь завершения.

Процесс может занять от нескольких минут до часа и более для больших баз — это нормально. Не прерывайте выгрузку и не выключайте компьютер: оборванный DT-файл бесполезен, его нельзя «докачать». Признак успешного завершения — сообщение конфигуратора о том, что выгрузка выполнена, и файл ожидаемого размера в указанном каталоге.

Выгрузка базы в DT
  1. 1
    Завершите все сеансы пользователей в базе
  2. 2
    Откройте базу в режиме «Конфигуратор»
  3. 3
    Выберите «Администрирование» → «Выгрузить информационную базу»
  4. 4
    Укажите путь и имя файла с расширением .dt
  5. 5
    Дождитесь сообщения об успешном завершении выгрузки
  6. 6
    Проверьте, что файл создан и имеет ненулевой размер

Если выгрузка завершается ошибкой, чаще всего причины такие: не хватает монопольного доступа, закончилось место на диске или в базе есть повреждения. В последнем случае имеет смысл запустить «Тестирование и исправление» информационной базы (тот же пункт меню «Администрирование») с предварительной резервной копией и повторить выгрузку.

Способ 2. Архивирование файловой базы напрямую

Если конфигуратор недоступен (нет пароля администратора или нужно передать базу «как есть», вместе со всеми настройками каталога), допустимо заархивировать сам каталог базы. Обязательное условие — все сеансы завершены, файл 1Cv8.1CD не заблокирован ни одним процессом.

Найдите каталог базы: его путь виден в списке информационных баз при запуске 1С (кнопка «Настройка» в окне выбора баз показывает параметры подключения, а адрес каталога отображается внизу окна списка). Скопируйте каталог целиком в отдельную папку и уже копию отправляйте в архив — так вы не рискуете рабочей базой, если архиватор запустят повторно во время чьего-то сеанса.

Учтите, что прямое архивирование обычно даёт файл большего размера, чем связка «DT + архив», потому что сжимается вся база со служебными областями. Этот способ оправдан, когда получателю нужен именно файловый вариант, который можно сразу подключить в списке баз без загрузки через конфигуратор.

Сравнение вариантов упаковки

Выгрузка DT + архив

Даёт минимальный итоговый размер и надёжную переносимость; получателю понадобится конфигуратор для загрузки

Архив каталога базы

Проще для получателя — подключается как файловая база; но архив обычно крупнее и требует полного завершения сеансов

Архив с разбиением на тома

Подходит, когда даже сжатый файл больше почтового лимита; все части нужно передать полностью

Облачное хранилище

Лучший вариант для очень больших баз; передаётся ссылка, а не файл, ограничение почты не мешает

Сжатие архиватором: настройки, которые дают максимум

Для сжатия подойдёт любой архиватор, но наилучшую степень сжатия на файлах 1С обычно показывает 7-Zip с форматом 7z. Встроенный в Windows ZIP-архиватор удобен тем, что не требует установки программ и открывается у любого получателя, однако сжимает заметно слабее.

Рекомендуемые настройки 7-Zip: формат архива — 7z, уровень сжатия — «Максимальный» или «Ультра», метод сжатия — LZMA2, размер словаря — не меньше 64 МБ (при достаточном объёме оперативной памяти). Для DT-файла разницу между «Максимальным» и «Ультра» уровнем стоит проверить на практике: иногда выигрыш минимален, а времени уходит вдвое больше.

Для ориентира по времени: сжатие многогигабайтного файла на уровне «Ультра» на среднем офисном компьютере может занять десятки минут. Запускайте упаковку тогда, когда компьютер не нужен для другой работы, и не прерывайте процесс — частично созданный архив не откроется.

Разбиение большого архива на части и отправка

Если даже сжатый файл превышает лимит почтового вложения, разбейте его на тома. В 7-Zip при добавлении в архив есть поле «Разбить на тома, размером» — укажите, например, 20M для томов по 20 мегабайт. Архиватор создаст последовательность файлов вида archive.7z.001, archive.7z.002 и так далее.

Каждый том отправляется отдельным письмом или несколькими письмами. Обязательно пронумеруйте письма в теме («База, часть 1 из 6») и в последнем письме укажите общее количество частей — получателю нужны все тома, потеря хотя бы одного делает весь архив нечитаемым. Распаковывается многотомный архив открытием первого файла серии.

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

Типичные ошибки при отправке базы
01
Архивирование базы при открытых сеансах — получатель получает повреждённый файл, который не открывается
02
Прерывание выгрузки DT — файл оказывается неполным и бесполезным, процедуру приходится начинать заново
03
Отправка пароля к архиву в том же письме — защита теряет смысл, данные под угрозой при перехвате письма
04
Потеря одного тома многотомного архива — распаковать базу невозможно, всё нужно пересылать заново
05
Отправка в формате, который не откроется у получателя, — например 7z без проверки, что у той стороны есть подходящий архиватор

Проверка результата перед отправкой

Прежде чем отправлять архив, убедитесь, что он рабочий. Для DT-файла самая надёжная проверка — загрузить его в пустую информационную базу на своём компьютере: создайте новую базу без конфигурации, откройте конфигуратор, выберите «Администрирование» → «Загрузить информационную базу» и укажите DT-файл. Если загрузка прошла и база открывается в режиме «Предприятие» — передавать можно.

Для архива проверьте целостность встроенной функцией архиватора: в 7-Zip это команда «Тестировать» в контекстном меню архива. Тест должен завершиться без ошибок. Дополнительно сравните размер архива с ожидаемым — подозрительно маленький файл после долгого сжатия может указывать на сбой.

Контрольные точки

Как проверить результат перед отправкой

Тест архива в 7-Zip
Норма

Проверка завершена, ошибок не найдено

Тревожный признак

Сообщения о повреждённых данных или невозможности прочитать файл

Загрузка DT в пустую базу
Норма

База загружается и открывается в режиме «Предприятие»

Тревожный признак

Ошибка загрузки или база не открывается

Количество томов
Норма

Число частей совпадает с указанным в письме, все файлы присутствуют

Тревожный признак

Не хватает тома или размеры частей аномально малы

Размер вложения
Норма

Архив меньше лимита почтового сервиса

Тревожный признак

Письмо отклоняется сервером из-за превышения размера

Ограничения и когда самостоятельной работы недостаточно

Описанные приёмы покрывают типовую ситуацию с файловой базой небольшого и среднего размера. Для серверных баз (MS SQL, PostgreSQL) выгрузка DT тоже работает, но при очень больших объёмах она может занимать часы и требовать значительных ресурсов сервера — такие операции лучше планировать на нерабочее время и согласовывать с администратором.

Если база повреждена и не выгружается, если объём исчисляется десятками гигабайт или если требуется передать не всю базу, а только часть данных, — это задачи для специалиста по 1С. Самостоятельные эксперименты с «Тестированием и исправлением» на повреждённой базе без резервной копии могут привести к потере данных.

Итог

Что важно запомнить

Минимальный размер даёт связка «выгрузка DT плюс сжатие в 7z». Перед работой завершите все сеансы и сделайте резервную копию. Если архив больше почтового лимита — разбейте на тома или отправьте ссылкой через облако. Перед отправкой протестируйте архив и, по возможности, проверьте загрузку DT в чистую базу.

Частые вопросы

Можно ли просто заархивировать файл 1Cv8.1CD и отправить?

Можно, если база файловая и все сеансы в ней завершены. Но такой архив обычно крупнее, чем архив DT-файла, потому что сжимается вся база со служебными областями. Копируйте файл в отдельный каталог перед архивацией, чтобы не трогать рабочую базу.

Насколько уменьшится база после выгрузки в DT и сжатия?

Точной цифры нет — она зависит от состава данных. Если в базе много «мусора» и текстовых данных, итоговый архив может быть в несколько раз меньше исходного файла. Если основной объём — фотографии и PDF-вложения, выигрыш от архиватора будет небольшим, и поможет в основном сама выгрузка в DT.

Что делать, если выгрузка DT зависает или падает с ошибкой?

Проверьте, что нет активных сеансов и достаточно места на диске. Если выгрузка стабильно прерывается с ошибкой, сделайте резервную копию каталога базы и запустите «Тестирование и исправление» из меню «Администрирование» в конфигураторе, затем повторите выгрузку. При повторных сбоях привлеките специалиста.

Как передать базу, если архив получился 500 МБ и больше?

Такой объём по почте не отправить. Используйте облачное хранилище или сервис передачи файлов: загрузите архив, сгенерируйте ссылку на скачивание и отправьте её письмом. Пароль на архив при этом всё равно стоит поставить, а сам пароль передать отдельным каналом.

Откроется ли архив 7z у получателя без установленного 7-Zip?

Не обязательно. Формат 7z требует совместимого архиватора. Если не уверены в программах получателя, используйте ZIP — он открывается встроенными средствами Windows, — либо заранее уточните у получателя, чем он сможет распаковать архив.

Нужно ли удалять из базы лишние данные перед выгрузкой?

Как правило, нет — выгрузка в DT сама отсекает большую часть служебного объёма. Целенаправленная чистка (удаление старых помеченных объектов, свёртка базы) имеет смысл, только если база объективно огромна и её нужно уменьшить кардинально. Такие операции выполняются с резервной копией и лучше — с участием специалиста.