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

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

Как сделать резервную копию базы 1С 8.3

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

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

Универсальный метод, который работает в обоих режимах, — выгрузка информационной базы в файл с расширением .dt через конфигуратор. Такой файл содержит и данные, и конфигурацию, и подходит для переноса базы между серверами и платформами. Однако для больших клиент-серверных баз выгрузка в dt выполняется долго и не заменяет регулярное копирование средствами SQL Server или PostgreSQL.

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

Какие виды резервных копий существуют в 1С 8.3

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

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

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

Выгрузка в .dt

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

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

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

Копия средствами СУБД

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

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

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

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

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

Как скопировать файловую базу напрямую

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

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

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

Резервное копирование клиент-серверной базы средствами СУБД

Для баз на MS SQL Server или PostgreSQL выгрузка в dt на больших объёмах занимает часы, поэтому основным механизмом резервного копирования становятся штатные средства СУБД. В MS SQL Server это полная резервная копия (Full backup) через SQL Server Management Studio или план обслуживания; в PostgreSQL — утилита pg_dump или физическое копирование.

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

sql
BACKUP DATABASE [MyBase1C] TO DISK = N'D:\Backups\MyBase1C_full.bak' WITH COMPRESSION, CHECKSUM;

Обратите внимание: копия СУБД привязана к конкретной СУБД и её версии. Перенести такую копию с MS SQL на PostgreSQL напрямую нельзя — для миграции между СУБД используют именно выгрузку в dt. Поэтому многие организации совмещают оба подхода: ежедневные копии средствами СУБД плюс периодическая выгрузка в dt как переносимый архив.

Как автоматизировать резервное копирование

Ручное копирование рано или поздно забывают, поэтому резервное копирование должно выполняться по расписанию без участия человека. Для файловых баз используют планировщик заданий Windows и пакетный файл, который копирует 1Cv8.1CD в архивную папку с датой в имени. Для клиент-серверных баз настраивают план обслуживания в SQL Server или задание cron с pg_dump для PostgreSQL.

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

batch
"C:\Program Files\1cv8\8.3.22.1750\bin\1cv8.exe" DESIGNER /F"D:\Bases\Trade" /NАдминистратор /PПароль /DumpIB"D:\Backups\trade_%date%.dt" /DisableStartupDialogs

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

Как проверить, что копия восстанавливается

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

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

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

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

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

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

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

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

Восстановление в тестовую базу
Норма

Загрузка завершается без ошибок, база открывается

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

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

Целостность данных
Норма

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

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

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

Типичные ошибки и ограничения

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

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

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

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

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

Частые вопросы о резервном копировании 1С 8.3

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

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

Чем отличается выгрузка в dt от копии базы данных SQL?

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

Как восстановить базу из файла .dt?

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

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

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

Достаточно ли копировать базу на сетевую папку в том же офисе?

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

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

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