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

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

Как сделать бэкап 1С 8.3: пошаговая инструкция

Как сделать бэкап 1С 8.3: выгрузка базы в файл .dt через конфигуратор, резервное копирование SQL-базы, автоматизация по расписанию и проверка восстановления.

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

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

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

Что нужно знать перед созданием резервной копии

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

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

Третий момент — место хранения. Копия, лежащая на том же диске, что и рабочая база, не защищает от выхода диска из строя и от шифровальщиков. Храните бэкапы на отдельном диске, сетевом хранилище или в облаке, желательно с несколькими поколениями копий (например, за последнюю неделю по дням и ежемесячные).

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

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

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

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

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

Резервное копирование файловой базы копированием

Если база файловая, самый быстрый бэкап — скопировать файл 1Cv8.1CD из папки базы. Этот файл содержит всю базу целиком. Копирование выполняется средствами Windows: проводником, командой copy или скриптом.

Главное условие — отсутствие активных сеансов. Проверить это можно по отсутствию файла 1Cv8.1CL рядом с базой (это файл блокировок) или через список активных пользователей в конфигураторе. Если сеансы есть, сначала завершите их.

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

batch
@echo off

set SRC=D:\Bases\Trade\1Cv8.1CD

set DST=E:\Backups\Trade_%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%.1CD

copy /Y "%SRC%" "%DST%"

Такой скрипт можно поставить в планировщик на ночное время, когда пользователи не работают. Дополнительно полезно сжимать копию архиватором (7-Zip, WinRAR): файловые базы обычно хорошо сжимаются, что экономит место в хранилище.

Бэкап клиент-серверной базы (SQL)

Для баз на MS SQL Server, PostgreSQL или другой СУБД выгрузка в .dt остаётся рабочим вариантом, но основным способом резервного копирования должен быть штатный бэкап СУБД. Он быстрее, не требует монопольного доступа к базе 1С и позволяет восстановить данные на конкретный момент времени при использовании полной модели восстановления.

В MS SQL Server резервная копия создаётся через SQL Server Management Studio: правой кнопкой по базе → «Задачи» → «Создать резервную копию», тип — «Полная», назначение — файл на диске. Для регулярного копирования настраивается план обслуживания (Maintenance Plan) или задание агента SQL Server с командой BACKUP DATABASE.

В PostgreSQL используется утилита pg_dump или физическое копирование с WAL-архивацией. Пример логической выгрузки:

bash
pg_dump -U postgres -F c -f /backup/trade_$(date +%Y%m%d).dump trade_base

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

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

Выгрузка в .dt

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

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

Быстро и просто для файловых баз. Ограничение: только при закрытых сеансах, не подходит для клиент-серверного режима.

Бэкап средствами СУБД

Быстро, без остановки работы, восстановление на момент времени. Ограничение: привязка к конкретной СУБД, нужны навыки администрирования.

Автоматизация резервного копирования по расписанию

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

Для SQL-баз расписание настраивается средствами самой СУБД: план обслуживания в MS SQL Server или cron-задание с pg_dump в PostgreSQL. Рекомендуемая схема для активно используемой базы — полный бэкап ежедневно, а при полной модели восстановления — дополнительно бэкап журнала транзакций несколько раз в день.

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

Типичные ошибки
01
Хранение бэкапа на том же диске, что и база — при сбое диска теряется и база, и копия
02
Копирование файловой базы при открытых сеансах — копия оказывается повреждённой и не открывается
03
Отсутствие ротации — диск переполняется, и новые копии перестают создаваться
04
Ни разу не проверенное восстановление — в критический момент выясняется, что копия нерабочая
05
Бэкап только перед обновлением, но не по расписанию — за промежуток между обновлениями данные теряются полностью

Проверка и восстановление резервной копии

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

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

Для файловой копии достаточно подключить скопированную папку как новую базу в списке и открыть её. Для SQL-бэкапа — восстановить копию в базу с другим именем на том же сервере и проверить открытие. Отдельно проверяйте, что восстановленная база содержит свежие документы: сравните дату последнего документа с ожидаемой.

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

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

Файл копии создан
Норма

Файл .dt или .1CD существует, размер сопоставим с размером базы

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

Файл отсутствует, нулевого размера или заметно меньше обычного

Восстановление
Норма

Копия загружается в пустую базу без ошибок

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

Ошибка загрузки, сообщение о повреждении файла

Данные после восстановления
Норма

Открываются документы, отчёты строятся, последние документы на месте

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

Пустые журналы, ошибки при открытии объектов, отсутствуют свежие данные

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

Можно ли делать бэкап 1С, пока пользователи работают?

Выгрузку в .dt и копирование файловой базы выполнять нельзя — нужен монопольный доступ или закрытые сеансы. А вот бэкап средствами СУБД (MS SQL, PostgreSQL) делается «на горячую», без остановки работы пользователей. Поэтому для круглосуточно работающих баз рекомендуется именно этот способ.

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

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

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

Минимум — ежедневно при активной работе с базой. Для критичных баз на SQL дополнительно настраивают копии журнала транзакций несколько раз в день, чтобы потерять не более нескольких часов работы. Редко используемые базы достаточно копировать после каждого значимого изменения.

Где хранить резервные копии?

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

Нужен ли бэкап перед обновлением конфигурации?

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

Что делать, если база большая и выгрузка в .dt идёт очень долго?

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

Итог

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

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