База 1С в ZIP-архиве: как её распаковать и поднять

· 10 мин

Содержание

ZIP — это только упаковка. Загрузить «базу из ZIP» напрямую нельзя: сначала архив распаковывают, потом смотрят, что внутри. Если там файл 1Cv8.1CD, базу просто подключают в списке. Если файл .dt, его загружают через Конфигуратор: Администрирование → Загрузить информационную базу.

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

Что лежит в архиве и какой путь выбрать

Откройте ZIP архиватором и посмотрите на расширения. Обычно встречается один из четырёх вариантов.

Что внутриЧто этоКак поднять
1Cv8.1CDФайловая база целикомРаспаковать в папку и добавить в список баз
*.dtВыгрузка информационной базыЗагрузить через Конфигуратор или /RestoreIB
*.cf / *.cfuКонфигурация или обновление, без данныхЗагрузка конфигурации, данные это не вернёт
*.bakРезервная копия SQL ServerВосстановить средствами СУБД

Часто в архиве лежит целая папка с базой: кроме 1Cv8.1CD там есть служебные файлы и каталоги. Их не выбрасывайте, распаковывайте всё как есть.

Сомневаетесь, что за файл? Посмотрите размер. Файл 1Cv8.1CD у рабочей базы весит от сотен мегабайт до десятков гигабайт, а .dt обычно в несколько раз меньше: он сжат.

Файл конфигурации .cf базу с данными не заменяет. Если вам прислали только его, документов и справочников там нет.

Что проверить до начала

Три минуты на подготовку экономят вечер. Пройдитесь по списку.

  • 💾 Место на диске. Распакованная база занимает больше, чем архив. Для .dt при загрузке база разворачивается заново, ориентируйтесь на запас в два-три размера архива.
  • 🔢 Версия платформы. Базу, созданную в более новой платформе, старой не открыть. Узнайте номер у отправителя или посмотрите в окне запуска 1С после первой попытки. Ставьте платформу с тем же номером или выше.
  • 🗂 Конфигурация. При загрузке .dt конфигурация в целевой базе должна соответствовать выгрузке. Проще всего грузить в пустую базу, созданную без конфигурации.
  • 🔐 Права. Нужна роль администратора в самой базе и права записи в папку на диске.
  • 👥 Тишина в базе. Если вы заменяете рабочую базу, пусть все выйдут. Загрузка требует монопольного доступа.

Перед загрузкой поверх действующей базы сделайте её копию. Загрузка .dt стирает все данные в целевой базе и заменяет их данными из выгрузки. Назад дороги нет.

Для файловой базы копия — это просто копия папки. Для клиент-серверной нужна выгрузка .dt или резервная копия СУБД.

Перед загрузкой
Выполнено: 0 / 6

Способ первый: файл 1Cv8.1CD, подключение без загрузки

Это самый простой случай. Никакой «загрузки» не нужно, вы просто даёте платформе новый адрес.

  1. Создайте пустую папку, например D:\Bases\Torgovlya. Путь лучше без кириллицы и пробелов, хотя платформа с ними справляется.
  2. Распакуйте архив в эту папку. Файл 1Cv8.1CD должен лежать прямо в ней, а не во вложенной папке.
  3. Запустите 1С. В окне запуска нажмите Добавить.
  4. Выберите Добавление в список существующей информационной базы, затем Далее.
  5. Введите название, которое будет видно в списке, и тип размещения — На данном компьютере или на компьютере в локальной сети.
  6. Укажите путь к папке, а не к самому файлу. Нажмите Далее, затем Готово.

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

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

Небольшая подсказка по имени. Если после распаковки файл называется иначе, платформа его не найдёт. Имя должно быть именно 1Cv8.1CD.

Способ второй: файл .dt через Конфигуратор

Выгрузка .dt — основной формат переноса базы между компьютерами и серверами. Она работает и для файловых, и для клиент-серверных баз.

Подготовьте пустую базу

Если база новая, создайте её без шаблона:

  1. В окне запуска Добавить → Создание новой информационной базы.
  2. Выберите Создание информационной базы без конфигурации.
  3. Задайте название и каталог. Для файловой базы это пустая папка.

Конфигурацию добавлять не нужно. Она придёт вместе с данными из .dt.

Загрузите данные

  1. Выберите новую базу в списке и нажмите Конфигуратор.
  2. В меню откройте Администрирование → Загрузить информационную базу.
  3. Укажите распакованный файл .dt.
  4. Подтвердите замену данных. Если база не пустая, платформа предупредит, что всё будет перезаписано.
  5. Дождитесь окончания. В строке состояния внизу идёт процесс; закрывать окно нельзя.

Время зависит от размера. Выгрузка на 500 МБ обычно грузится минут десять–двадцать, на 5 ГБ — несколько часов. Это нормально, особенно на HDD.

После загрузки закройте Конфигуратор и запустите базу в режиме 1С:Предприятие. Проверьте, что документы открываются, и войдите под пользователем, который был в исходной базе.

Пошаговый помощник
Определите содержимое
Распакуйте ZIP и найдите файл с расширением .dt.

Автоматизация через командную строку

Если загрузок много (тестовые стенды, регулярное обновление копии для разработчиков), кнопки надоедают. Тут помогает запуск Конфигуратора из командной строки.

Базовая форма для файловой базы:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER /F "D:\Bases\Torgovlya" /RestoreIB "D:\Temp\base.dt" /Out "D:\Temp\restore.log"

Номер в пути подставьте свой: он совпадает с версией установленной платформы.

Что здесь что:

  • DESIGNER — запуск Конфигуратора в пакетном режиме;
  • /F — путь к каталогу файловой базы;
  • /RestoreIB — загрузить информационную базу из .dt;
  • /Out — файл журнала, куда пишутся сообщения;
  • имена пользователя и пароль задают параметрами /N и /P, если вход в базу защищён.

Для клиент-серверной базы вместо /F указывают сервер и имя базы:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER /S "server1c\Torgovlya" /N "Администратор" /P "пароль" /RestoreIB "D:\Temp\base.dt" /Out "D:\Temp\restore.log"

Здесь server1c — имя сервера 1С, Torgovlya — имя базы в кластере.

Чтобы скрипт сам распаковывал архив, добавьте перед командой строку для PowerShell:

Expand-Archive -Path "D:\Temp\base.zip" -DestinationPath "D:\Temp\unpacked" -Force

Вся цепочка в итоге: распаковать, загрузить, проверить код возврата и прочитать журнал. Если в журнале есть слово «Ошибка», пишите уведомление администратору.

Пароль в тексте скрипта виден всем, кто читает файл. Закройте права на папку со скриптами или храните данные для входа отдельно.

Серверная база: восстановление в кластере

Для клиент-серверной базы у вас два сценария, и выбор зависит от того, что в архиве.

Если в архиве .dt

Порядок такой же, как для файловой базы, но база создаётся на сервере:

  1. Откройте консоль администрирования серверов 1С или создайте базу из окна запуска: Добавить → Создание новой информационной базы → На сервере 1С:Предприятия.
  2. Укажите кластер, имя базы, тип СУБД и сервер СУБД.
  3. Включите галочку создания базы данных, если её ещё нет в СУБД.
  4. Дальше — Администрирование → Загрузить информационную базу в Конфигураторе, как выше.

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

Если в архиве .bak

Файл резервной копии SQL Server в 1С не загружают. Его восстанавливают средствами СУБД, например в SQL Server Management Studio: Базы данных → Восстановить базу данных. После этого базу регистрируют в кластере 1С, указав уже готовую базу данных.

У этого способа есть правило. Восстановленную базу данных подключайте к тому кластеру и под тем же сервером, где её ждёт платформа нужной версии. Иначе получите ошибки на старте.

Восстановление .bak поверх рабочей базы перезаписывает её. Сначала снимите копию, потом восстанавливайте. И не делайте этого в рабочее время: все сеансы в базе оборвутся.

Сравнение подходов

ПодходКогдаРиски
Подключить 1Cv8.1CDФайловая база, ничего менять не надоПлатформа должна подходить по версии
Загрузка .dt вручнуюРазовый перенос, база небольшаяДолго на больших объёмах
Загрузка .dt скриптомЧастые повторы, тестовые стендыПароль в скрипте, нужен контроль журнала
Восстановление .bakПеренос между серверами одной СУБДПривязка к версии СУБД и кластеру

Если что-то пошло не так

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

Диагностика: выберите симптом

Отдельно про один частый случай: платформа пишет, что файл не является выгрузкой. Значит, вы пытаетесь загрузить не тот файл (например, .cf) либо файл повреждён при распаковке. Проверьте расширение и распакуйте заново.

Что сделать после загрузки

База поднялась — это ещё не конец. Несколько действий избавят от сюрпризов.

  1. Проверьте работу ключевых разделов. Откройте последние документы, отчёт с оборотами за прошлый месяц и справочник контрагентов. Если цифры сходятся с исходной базой, всё хорошо.
  2. Пересоздайте то, что привязано к машине. Настройки принтеров, подключённое оборудование, пути к внешним файлам обычно привязаны к компьютеру и не переносятся.
  3. Отключите автоматические задания в копии. Если вы подняли тестовую копию рабочей базы, регламентные задания могут начать рассылать письма и обмениваться данными с реальными системами. Отключите обмены и рассылки до первого запуска.
  4. Задайте другое название. В окне запуска у тестовой копии должно быть имя, которое нельзя спутать с рабочей. Многие ошибки случаются, когда документ вводят «не в ту» базу.
  5. Выполните тестирование и исправление при необходимости. Эта процедура в Конфигураторе проверяет структуру данных. Нужна она, если база вела себя странно, например после аварийного завершения. Для неё потребуется монопольный доступ.

Скорость работы сразу после загрузки может быть ниже обычной. Платформа и СУБД перестраивают статистику и кэши, на это уходит день-два рабочей нагрузки.

Если делаете такие загрузки регулярно, заведите отдельную папку для распакованных файлов и чистите её раз в неделю. Забытые гигабайты старых выгрузок съедают диск быстрее, чем кажется.

Когда ZIP загружать не стоит

Бывают случаи, когда лучше остановиться и уточнить у отправителя.

  • 🚫 Архив пришёл от неизвестного человека. Внутри может быть что угодно, вплоть до внешних обработок с вредным кодом. Не запускайте такие базы на рабочем компьютере.
  • 🚫 Внутри нет ничего, кроме .cf. Данных там нет, значит, «базу» вы не получите.
  • 🚫 Архив разбит на части (.z01, .z02, .zip). Нужны все части в одной папке, иначе распаковка закончится ошибкой.
  • 🚫 В базе есть персональные данные, а доступа к ним у вас быть не должно. Выгрузки с живыми данными передают только по защищённым каналам.

Если база лицензионная, а запуск упирается в отсутствие ключа или программной лицензии, это вопрос лицензирования, а не загрузки. Обход защиты не рассматриваем: такие варианты незаконны и рискованны. Легальный выход — оформить лицензию или воспользоваться учебной версией платформы для проверки данных.

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

Можно ли загрузить ZIP в 1С прямо, без распаковки?
Нет. Платформа не читает ZIP как базу. Архив нужно распаковать и работать с тем, что внутри: 1Cv8.1CD или .dt.
Чем отличается `1Cv8.1CD` от `.dt`?
1Cv8.1CD — это сама файловая база, рабочий файл. .dt — выгрузка, сжатый переносной формат. Его можно загрузить и в файловую, и в серверную базу.
Сколько времени идёт загрузка?
Зависит от размера и диска. Небольшая база в 300–500 МБ грузится минут десять–двадцать. Многогигабайтные базы — часы, особенно на сетевых или медленных дисках.
Можно ли загрузить базу на платформу другой версии?
Если платформа новее, как правило, да. Если старее номера, на котором создана выгрузка, платформа откажется. Сравнивайте по номеру: нужен не ниже исходного.
Загрузка перезапишет мою текущую базу?
Да, если грузить в существующую базу. Все данные в ней заменятся данными из выгрузки. Поэтому для первой пробы создавайте новую пустую базу.
Как узнать, что в архиве лежит именно база?
Откройте архив и посмотрите расширения. Файл 1Cv8.1CD или .dt — признак базы. Если там только .cf, .epf или .erf, это конфигурация или внешние обработки и отчёты, без данных.