Резервная копия 1С, которая реально восстановится: .dt, файлы, SQL и расписание

· 10 мин

Содержание

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

Типичная ситуация: бухгалтер собирается обновить конфигурацию , закрыть год или запустить обработку от подрядчика. Копия нужна за пять минут до этого, а не «когда-нибудь».

1. Подготовка: что выяснить до копирования базы 1С

Первым делом определите, какая у вас база: файловая или клиент-серверная. Это видно в окне запуска 1С. Выделите базу в списке — внизу окна появится строка подключения:

  • 📁 File="D:\Bases\Buh" — файловая база, данные лежат в папке на диске;
  • 🖥️ Srvr="srv1c";Ref="buh" — серверная база, данные хранятся в СУБД.

Дальше подготовьте три вещи.

  1. Права. Для выгрузки .dt нужен пользователь с ролью «Полные права» или «Администратор системы». Для копирования средствами СУБД — доступ к серверу SQL.
  2. Место на диске. Файл .dt обычно в несколько раз меньше рабочей базы, потому что он сжат. Резервная копия SQL без сжатия близка к размеру базы. Держите запас хотя бы на две копии.
  3. Окно времени. Предупредите коллег и попросите выйти из программы. Для файловой базы это обязательно, для серверной при выгрузке .dt — сильно желательно: копия, снятая во время активной работы, может зафиксировать незавершённые изменения.

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

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

СпособПодходитПлюсыОграничения
Выгрузка .dtлюбая базаодин файл, переносится между файловым и серверным вариантомна больших базах идёт долго
Копия папки с 1Cv8.1CDфайловая базасамый быстрый, восстановление простым копированиемвсе пользователи должны выйти
Встроенное резервное копирование в БП 3.0 и других типовыхфайловая базанастраивается мышкой, есть расписаниедля серверных баз не предназначено
Бэкап MS SQL / PostgreSQLсерверная базабыстро на больших объёмах, без остановки работынужен доступ к СУБД и навыки администратора
Как работает ваша база?

2. Выгрузка копии базы через Конфигуратор

Это способ, который работает всегда: для файловой и серверной базы, для любой конфигурации.

  1. Запустите 1С, выделите базу и нажмите кнопку Конфигуратор.
  2. Войдите под пользователем с полными правами.
  3. Откройте меню Администрирование → Выгрузить информационную базу.
  4. Укажите папку и имя файла. Удобно включать в имя дату и повод: buh_2026-10-07_pered_obnovleniem.dt.
  5. Нажмите Сохранить и дождитесь сообщения о завершении выгрузки.

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

Не сохраняйте .dt в каталог самой базы. Если диск выйдет из строя или папку удалят, вы потеряете и базу, и копию одновременно.

Как восстановить из .dt

Восстановление идёт в обратном порядке: Администрирование → Загрузить информационную базу. Загрузка полностью заменяет данные и конфигурацию в той базе, куда вы загружаете. Поэтому проверку копии делайте не в рабочей базе, а в новой пустой: создайте её в окне запуска кнопкой Добавить → Создание новой информационной базы → «без конфигурации», откройте в Конфигураторе и загрузите туда файл.

Для загрузки .dt нужен монопольный доступ: в базе не должно быть других пользователей.

Что не попадает в .dt

  • 🔐 Настройки кластера серверов 1С и параметры подключения пользователей на их компьютерах.
  • 📄 Внешние обработки и отчёты, лежащие файлами на диске, а не в справочнике дополнительных обработок.
  • 📂 Присоединённые файлы, если в программе включено хранение файлов в томах на диске. Тома копируйте отдельно, вместе с базой.

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

3. Копирование файловой базы: папка и встроенный механизм

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

Ручное копирование каталога

  1. Убедитесь, что все пользователи вышли из программы, включая фоновые сеансы с других компьютеров.
  2. Откройте каталог базы — путь виден в строке подключения в окне запуска.
  3. Скопируйте весь каталог в другое место или упакуйте его в архив.

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

Не удаляйте файлы блокировки вручную, чтобы «освободить» базу. Сначала найдите, кто в ней работает, и попросите выйти. Принудительный разрыв сеанса обрывает незаписанные документы пользователя.

Каталоги с кэшем и временными файлами (например, папки с логами 1Cv8Log) копировать не обязательно, но и вреда не будет. Журнал регистрации пригодится, если после восстановления нужно выяснить, кто что изменил.

Встроенное резервное копирование в типовых конфигурациях

В БП 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на Библиотеке стандартных подсистем есть собственный механизм. Найти его можно в разделе Администрирование → Обслуживание → Резервное копирование и восстановление.

Там доступны:

  • ручной запуск копии «сейчас»;
  • автоматическое копирование по расписанию, например ежедневно при завершении работы;
  • выбор каталога и числа хранимых копий;
  • восстановление из ранее созданной копии.

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

4. Копия серверной базы 1С средствами MS SQL и PostgreSQL

В клиент-серверном варианте данные лежат в базе СУБД. Её резервная копия делается быстрее выгрузки .dt и не требует выгонять пользователей. Имя базы в СУБД можно посмотреть в консоли администрирования серверов 1С, в свойствах информационной базы, поле с именем базы данных.

MS SQL Server

Через SQL Server Management Studio: правой кнопкой по базе → Tasks → Back Up (в русской версии Задачи → Создать резервную копию), тип — «Полная», путь к файлу .bak.

То же самое запросом:

BACKUP DATABASE [buh]
TO DISK = N'E:\Backup\buh_full.bak'
WITH INIT, CHECKSUM, STATS = 10;

Параметр CHECKSUM заставляет сервер проверять страницы при записи. Сжатие COMPRESSION уменьшает файл в несколько раз, но в редакции Express оно недоступно.

Если база в модели восстановления «Полная» (FULL), кроме полных копий нужны регулярные копии журнала транзакций. Без них журнал растёт, пока не займёт весь диск:

BACKUP LOG [buh]
TO DISK = N'E:\Backup\buh_log.trn'
WITH CHECKSUM;

Если восстановление на конкретную минуту вам не нужно, переведите базу в модель «Простая» (SIMPLE) и делайте только полные копии.

PostgreSQL

Для PostgreSQL копию снимают утилитой pg_dump. Удобнее всего формат custom (-Fc): он сжат и позволяет восстанавливать выборочно.

pg_dump -U postgres -h localhost -Fc -f /backup/buh_2026-10-07.dump buh

Восстановление — в заранее созданную пустую базу утилитой pg_restore:

pg_restore -U postgres -h localhost -d buh_test /backup/buh_2026-10-07.dump

Пароль для запуска по расписанию храните в файле .pgpass (в Windows — %APPDATA%\postgresql\pgpass.conf), а не в тексте скрипта.

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

5. Автоматическое копирование базы 1С из командной строки

Ручную копию забывают сделать именно в тот день, когда она нужна. Поэтому регулярное копирование ставят в планировщик заданий Windows.

Конфигуратор умеет выгружать .dt в пакетном режиме. Ключевые параметры запуска 1cv8.exe:

ПараметрЧто делает
DESIGNERзапуск в режиме Конфигуратора
/F"путь"файловая база
/S"сервер\база"серверная база
/N"имя" /P"пароль"пользователь 1С с полными правами
/DumpIB "файл.dt"выгрузить информационную базу
/Out "файл.log"записать результат в лог
/DisableStartupMessagesне показывать стартовые диалоги

Пример .bat-файла для файловой базы с датой в имени и удалением копий старше 14 дней:

@echo off
set V8="C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe"
set BASE=D:\Bases\Buh
set DEST=E:\Backup\Buh

for /f %%i in ('powershell -NoProfile -Command "Get-Date -Format yyyy-MM-dd_HHmm"') do set STAMP=%%i

%V8% DESIGNER /F"%BASE%" /N"Backup" /P"********" /DisableStartupMessages /DumpIB "%DEST%\buh_%STAMP%.dt" /Out "%DEST%\buh_%STAMP%.log"

forfiles /p "%DEST%" /m *.dt /d -14 /c "cmd /c del @path"

Номер версии платформы в пути замените на свой: он виден в каталоге C:\Program Files\1cv8\. Для серверной базы вместо /F"%BASE%" укажите /S"srv1c\buh".

Чтобы задание запускалось по расписанию:

  1. Откройте Планировщик заданий → Создать задачу.
  2. На вкладке «Общие» выберите учётную запись и включите «Выполнять вне зависимости от регистрации пользователя».
  3. На вкладке «Триггеры» задайте время, например ежедневно в 23:00.
  4. На вкладке «Действия» укажите ваш .bat.

Пароль пользователя 1С в тексте скрипта виден всем, у кого есть доступ к файлу. Заведите для копирования отдельного пользователя, закройте .bat правами NTFS и не держите его в общей папке.

Для серверных баз на MS SQL расписание удобнее настроить в самой СУБД: планом обслуживания (Maintenance Plan) или заданием SQL Server Agent. В Express агента нет, там запускают sqlcmd с текстом BACKUP DATABASE из планировщика Windows. Для PostgreSQL pg_dump ставят в планировщик Windows или в cron на Linux.

6. Где хранить копии базы и как проверить, что они рабочие

Копия, которая лежит на том же диске, что и база, защищает только от ошибки пользователя. От поломки диска, шифровальщика или кражи сервера она не спасает.

Практичная схема — правило «3-2-1»:

  • 🗂️ 3 копии данных: рабочая база и две резервные;
  • 💽 2 разных носителя: например, локальный диск сервера и сетевое хранилище;
  • ☁️ 1 копия вне офиса: облачное хранилище или внешний диск, который увозят домой.

Сетевая папка, постоянно подключённая к серверу, от шифровальщика не защищает: он зашифрует и её. Хотя бы одна копия должна быть недоступна для записи с рабочего сервера.

Сколько копий держать

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

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

Копию проверяют восстановлением, а не по размеру файла.

  1. Раз в месяц разверните свежую копию в отдельную тестовую базу.
  2. Откройте её в режиме «1С:Предприятие» и сверьте пару контрольных цифр с рабочей базой: например, оборотно-сальдовую ведомость на последнее закрытое число.
  3. Для файловой базы прогоните тестирование: Администрирование → Тестирование и исправление в Конфигураторе, сначала только с проверкой логической целостности, без исправления.
  4. Для SQL-копий выполните проверку файла:
RESTORE VERIFYONLY
FROM DISK = N'E:\Backup\buh_full.bak'
WITH CHECKSUM;

Для файловой базы есть ещё отдельная утилита chdbfl.exe в каталоге bin платформы. Она проверяет физическую целостность файла 1Cv8.1CD. Запускайте её только на базе, из которой все вышли, и на копии, а не на рабочем файле, если собираетесь включать исправление.

Ежемесячная проверка резервного копирования
Выполнено: 0 / 6

7. Если копия не создаётся

Несколько частых сбоев и что с ними делать.

  • ❌ Выгрузка .dt обрывается с ошибкой нехватки памяти. На больших базах 32-разрядному Конфигуратору не хватает адресного пространства. Запустите выгрузку 64-разрядной версией платформы или делайте копию средствами СУБД.
  • ❌ Пакетный запуск ничего не делает, лог пустой. Проверьте путь к 1cv8.exe в кавычках и имя пользователя. Если у пользователя есть пароль, а /P не указан, Конфигуратор ждёт ввода и висит в фоне.
  • ❌ Не хватает места при выгрузке. Проверьте свободное место и на целевом диске, и на системном: при работе платформа использует временные файлы.
  • ❌ Копия файловой базы не открывается. Скорее всего, её копировали, пока в базе кто-то работал. Возьмите предыдущую копию и настройте копирование на время, когда никого нет, или переходите на выгрузку .dt.
  • ❌ Журнал транзакций MS SQL разросся до размеров диска. База в полной модели восстановления, а копий журнала нет. Настройте BACKUP LOG по расписанию или переведите базу в простую модель.

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

Можно ли перенести копию файловой базы на сервер 1С?
Да, через .dt. Выгрузите файловую базу, создайте пустую базу в кластере и загрузите в неё файл. Копию папки с 1Cv8.1CD на сервер так не перенести.
Нужна ли лицензия, чтобы развернуть копию на другом компьютере?
Да. Для запуска базы на другом компьютере нужна лицензия на этом компьютере. Сама выгрузка .dt лицензию не содержит и не переносит.
Чем копия .dt отличается от файла .cf?
В .cf только конфигурация, без данных: справочников, документов, остатков. Для резервного копирования он не подходит, он нужен для переноса доработок и обновлений.
Как часто делать резервную копию базы 1С?
Не реже раза в день, если в базе работают ежедневно. Плюс отдельная копия перед обновлением, закрытием периода и запуском групповых обработок.
Можно ли открыть .dt без 1С, чтобы посмотреть данные?
Нет. Это внутренний формат платформы. Чтобы увидеть данные, загрузите файл в пустую базу 1С той же или более новой версии платформы.