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

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

Как сделать копию информационной базы 1С

Как сделать копию базы 1С: выгрузка через конфигуратор, копирование файловой базы, выгрузка через СУБД. Проверка результата, типичные ошибки и ответы на вопросы.

Копия информационной базы 1С нужна в нескольких типовых ситуациях: перед обновлением конфигурации, перед массовой загрузкой или изменением данных, для создания тестовой базы разработчику, при переносе базы на другой компьютер или сервер. Способ копирования зависит от того, как развёрнута база — в файловом варианте или на сервере СУБД (MS SQL, PostgreSQL и др.).

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

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

Какой способ копирования выбрать

Выбор метода зависит от варианта развёртывания базы и цели копии. Файловая база хранится в одном файле 1Cv8.1CD в каталоге на диске — её можно скопировать как обычный файл. Клиент-серверная база физически находится в СУБД, и простого «файла базы» у неё нет: копию делают либо через выгрузку .dt, либо через резервную копию на уровне СУБД.

Выгрузка в .dt подходит почти всегда, но имеет ограничения: на больших базах (десятки гигабайт) процесс занимает много времени, а при загрузке .dt в клиент-серверный вариант возможны ошибки из-за нехватки памяти или тайм-аутов. Копирование на уровне СУБД быстрее и надёжнее для больших баз, но требует доступа к серверу баз данных и базовых навыков администрирования.

Сравнение способов копирования

Выгрузка в .dt через конфигуратор

Универсально, переносит данные между разными СУБД и платформами. Медленно на больших базах, требует монопольного доступа.

Копирование файла 1Cv8.1CD

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

Резервная копия средствами СУБД

Оптимально для больших клиент-серверных баз. Требует доступа к серверу СУБД и восстанавливается только в ту же СУБД.

Подготовка: что сделать до копирования

Главное условие корректной копии — отсутствие активных сеансов пользователей. Если во время выгрузки или копирования кто-то работает с базой, копия может получиться несогласованной: часть документов будет проведена, часть — нет, ссылки могут указывать на несуществующие объекты. Поэтому перед копированием нужно попросить пользователей выйти и проверить список активных сеансов.

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

Также заранее убедитесь, что на диске достаточно свободного места. Файл выгрузки .dt обычно меньше размера самой базы за счёт сжатия, но для больших баз всё равно может занимать десятки гигабайт. Резервная копия СУБД без сжатия может быть сопоставима с размером базы.

Копия через выгрузку в файл .dt

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

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

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

Важный нюанс: при загрузке .dt полностью заменяется содержимое базы-приёмника. Если загружать копию в существующую рабочую базу, все её данные будут потеряны. Поэтому загрузку всегда выполняйте в отдельную, специально созданную базу.

Копирование файловой базы

Файловая база целиком находится в одном каталоге, ключевой файл — 1Cv8.1CD. Чтобы сделать копию, достаточно скопировать этот файл (или весь каталог) в другое место средствами проводника или командной строки. Именно файл 1Cv8.1CD содержит данные и конфигурацию; остальные файлы каталога — служебные.

Порядок действий: завершите все сеансы, найдите каталог базы (путь виден в списке баз при запуске 1С — выделите базу и нажмите кнопку настройки или посмотрите строку подключения), скопируйте файл 1Cv8.1CD в папку назначения. Затем добавьте копию в список баз через кнопку «Добавить» → «Добавление в список существующей информационной базы», указав новый каталог.

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

cmd
copy "D:\Bases\Trade\1Cv8.1CD" "E:\Backups\1Cv8_copy.1CD"

Копия клиент-серверной базы через СУБД

Для баз на MS SQL Server, PostgreSQL или другой поддерживаемой СУБД штатный способ — резервное копирование средствами самой СУБД. В MS SQL это делается через SQL Server Management Studio: правый клик по базе → «Tasks» → «Back Up», тип копии Full, указание файла назначения. В PostgreSQL используется утилита pg_dump или pg_basebackup.

Восстановление копии выполняется в новую базу данных с другим именем. После восстановления нужно создать новую информационную базу в консоли кластера 1С (или в списке баз), указав сервер СУБД и имя восстановленной базы. Параметры — такие же, как у исходной базы, меняется только имя.

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

Копия клиент-серверной базы
  1. 1
    Сделайте полную резервную копию базы средствами СУБД (SSMS или pg_dump).
  2. 2
    Восстановите копию в новую базу данных с отличным именем.
  3. 3
    В консоли кластера 1С создайте новую информационную базу, указав восстановленную БД.
  4. 4
    Первым входом отключите регламентные задания и обмены с внешними системами.
  5. 5
    Проверьте открытие ключевых документов и отчётов в копии.

Проверка результата и типичные ошибки

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

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

Как проверить копию

Открытие базы в режиме предприятия
Норма

База открывается без ошибок, списки документов отображаются

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

Ошибка формата потока, требование восстановления, пустые списки

Итоги отчётов
Норма

Оборотно-сальдовая ведомость в копии совпадает с рабочей базой на дату копии

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

Итоги расходятся или отчёт строится с ошибками

Проведение документа
Норма

Тестовый документ проводится без ошибок

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

Ошибки ссылочной целостности, битые ссылки

Для глубокой проверки файловой копии можно запустить конфигуратор с параметром тестирования и исправления («Администрирование» → «Тестирование и исправление») в режиме только проверки, без исправления. Это выявит физические повреждения файла. Для клиент-серверных баз аналогичную роль выполняют штатные проверки целостности СУБД.

Типичные ошибки
01
Копирование файла 1Cv8.1CD при открытых сеансах — копия оказывается повреждённой и не открывается.
02
Загрузка .dt в рабочую базу вместо новой пустой — все данные рабочей базы безвозвратно заменяются копией.
03
Запуск тестовой копии без отключения регламентных заданий — копия начинает отправлять реальные обмены, письма и выгрузки.
04
Хранение копии на том же диске, что и рабочая база — при отказе диска теряются и база, и копия.
05
Отсутствие проверки копии сразу после создания — неработоспособность обнаруживается в момент, когда копия уже нужна.

Автоматизация и хранение копий

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

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

Пакетный запуск выгрузки для файловой базы выполняется командой вида: 1cv8.exe DESIGNER /F"путь_к_базе" /N"пользователь" /P"пароль" /DumpIB"путь_к_файлу.dt". Учтите: даже в пакетном режиме выгрузка требует отсутствия активных сеансов, поэтому запуск планируйте на ночное время.
ПЗ
Практическое замечание

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

Чем файл .dt отличается от файла 1Cv8.1CD?

1Cv8.1CD — это сам файл файловой базы, с которым работает платформа. Файл .dt — это выгрузка (архив) базы, созданная конфигуратором: его нельзя открыть как базу напрямую, но можно загрузить в любую пустую базу, в том числе клиент-серверную. Файл .dt переносит данные между разными СУБД и версиями платформы, а 1Cv8.1CD привязан к файловому варианту.

Можно ли скопировать базу, не выгоняя пользователей?

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

Как сделать копию базы в 1С:Фреш или другом облаке?

В облачных сервисах прямой доступ к файлам и СУБД закрыт. Используйте штатную функцию выгрузки данных сервиса (обычно доступна в личном кабинете или через «Администрирование» → «Выгрузить данные» в режиме предприятия) либо выгрузку .dt через конфигуратор, если сервис предоставляет такой доступ. Уточните возможности в документации конкретного облачного провайдера.

Почему выгрузка в .dt зависает или падает с ошибкой?

Частые причины: недостаток места на диске назначения, нехватка оперативной памяти при работе с большими таблицами, повреждения в данных базы, активные сеансы. Проверьте свободное место, завершите сеансы, запустите тестирование и исправление базы. Если база клиент-серверная и большая, переходите на резервное копирование средствами СУБД.

Копия открывается, но просит лицензию или не пускает пользователей — это нормально?

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

Как часто нужно делать копии рабочей базы?

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

Итог

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

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