Администрирование · 11 мин
Как настроить автоматическую выгрузку баз 1С
Как настроить автоматическую выгрузку баз 1С через конфигуратор, планировщик задач и скрипты. Расписание, проверка архивов, типичные ошибки и FAQ.
Автоматическая выгрузка базы 1С — это регулярное создание файла архива (формат .dt для файловых и клиент-серверных баз или резервной копии SQL для серверных решений) по расписанию без участия пользователя. Такая выгрузка защищает от потери данных при сбоях дисков, ошибках обновления конфигурации, действиях вирусов-шифровальщиков и человеческого фактора.
Ручное копирование через конфигуратор работает, пока кто-то помнит о нём. На практике именно забытая выгрузка становится причиной потери данных: база падает в пятницу вечером, а последний архив датирован прошлым месяцем. Автоматизация снимает этот риск — задача выполняется по расписанию независимо от того, кто в отпуске и кто забыл.
Способ настройки зависит от варианта работы базы: файловая база на локальном компьютере или в сетевой папке, клиент-серверная база на MS SQL Server, PostgreSQL или другой СУБД, либо база в облачном сервисе. Ниже разобраны основные сценарии с конкретными командами, расписанием и проверкой результата.
Какой способ выгрузки выбрать для вашей базы
Перед настройкой определите, где физически находится база. Откройте 1С, зайдите в меню «Файл» — «Информация о базе» или посмотрите строку подключения в списке информационных баз. Если путь выглядит как обычная папка (например, D:\Bases\Trade), база файловая. Если указан сервер и имя базы — клиент-серверная.
Файловая база — это каталог с файлом 1Cv8.1CD. Её можно выгружать средствами самой платформы 1С (пакетный режим конфигуратора) или просто копировать файл, но копирование безопасно только при отсутствии активных сеансов. Клиент-серверная база живёт внутри СУБД, и корректный бэкап делается средствами этой СУБД, а выгрузка .dt служит дополнительным, переносимым форматом архива.
Сравнение вариантов выгрузки
Подходит для файловых баз любого размера. Создаёт .dt, который восстанавливается на любой платформе. Требует, чтобы в базе не было активных сеансов.
Быстро, но безопасно только при полном отсутствии пользователей в базе. Риск получить повреждённую копию при копировании во время работы.
Стандарт для клиент-серверных баз. Не прерывает работу пользователей, поддерживает разностные копии. Требует доступа к серверу СУБД.
Резервное копирование выполняет оператор сервиса. Пользователю доступна выгрузка данных через личный кабинет по запросу или расписанию, если сервис это поддерживает.
Настройка выгрузки файловой базы через пакетный режим конфигуратора
Платформа 1С умеет выполнять выгрузку из командной строки без открытия окон. Используется исполняемый файл 1cv8.exe из каталога установленной платформы (например, C:\Program Files\1cv8\<версия>\bin\1cv8.exe) с ключом DESIGNER и параметром /DumpIB, указывающим путь к итоговому файлу .dt.
Типовая команда выглядит так:
"C:\Program Files\1cv8\8.3.24.1467\bin\1cv8.exe" DESIGNER /F "D:\Bases\Trade" /N "Администратор" /P "пароль" /DumpIB "D:\Backup\trade_%date:~6,4%-%date:~3,2%-%date:~0,2%.dt" /DisableStartupDialogsЗдесь /F — путь к файловой базе, /N и /P — имя и пароль пользователя с правами администратора, /DumpIB — файл результата. В имени файла удобно подставлять дату, чтобы архивы не перезаписывали друг друга. Сохраните команду в файл с расширением .bat, например backup_trade.bat, и проверьте его запуск вручную: в указанной папке должен появиться файл .dt ненулевого размера.
Если в имени пользователя или пути есть пробелы и кириллица, сохраняйте bat-файл в кодировке OEM 866, иначе команда может не распознаться. Альтернатива — использовать короткие пути без пробелов и латинские имена учётных записей для служебного пользователя.
Настройка расписания через планировщик задач Windows
Сам bat-файл не запустится сам — расписание задаёт планировщик задач Windows. Откройте «Планировщик заданий» (taskschd.msc), создайте новую задачу (не «простую», а полную, чтобы были доступны все параметры) и настройте триггер — например, ежедневно в 21:00, когда пользователи уже завершили работу.
В действии укажите запуск вашего bat-файла. Критичные настройки на вкладке «Общие»: отметьте «Выполнять вне зависимости от регистрации пользователя» и «Выполнять с наивысшими правами». Учётная запись, от имени которой работает задача, должна иметь доступ и к каталогу базы, и к папке архивов.
- 1Создайте и вручную проверьте bat-файл с командой выгрузки
- 2Откройте планировщик задач и создайте новую задачу
- 3Настройте триггер: ежедневно в нерабочее время
- 4В действии укажите путь к bat-файлу, рабочую папку — каталог скрипта
- 5Включите запуск вне зависимости от регистрации пользователя и с наивысшими правами
- 6Запустите задачу вручную из планировщика и проверьте появление .dt-файла
- 7Проверьте журнал: код завершения 0x0 означает успех
После настройки обязательно запустите задачу вручную правой кнопкой — «Выполнить». Если код результата отличается от 0x0, смотрите журнал планировщика и добавьте в bat-файл запись лога, например перенаправление вывода в текстовый файл, чтобы видеть текст ошибки платформы.
Выгрузка клиент-серверной базы
Для базы на MS SQL Server основной механизм — план обслуживания (maintenance plan) или задание агента SQL Server с командой BACKUP DATABASE. Такой бэкап выполняется «на горячую», без выгона пользователей, и является главной линией защиты. Настройте полную копию ежедневно и, при больших объёмах изменений, разностные копии в течение дня.
Для PostgreSQL используется pg_dump или pg_basebackup с запуском через cron на Linux или планировщик Windows. Команда указывает имя базы, пользователя и файл результата; расписание задаётся аналогично файловому сценарию.
Дополнительно раз в неделю или месяц делайте выгрузку .dt пакетным режимом конфигуратора с параметром /S вместо /F (указывается сервер и имя базы: /S"Server\Base"). Файл .dt незаменим при переносе базы на другую СУБД, восстановлении на отдельном стенде для тестирования и в ситуациях, когда бэкап СУБД восстановить некуда.
Ротация архивов и место хранения
Архивы без ротации рано или поздно заполнят диск, и выгрузка начнёт падать с ошибкой. Настройте удаление старых файлов: например, храните ежедневные копии за последние 7–14 дней и еженедельные — за 1–2 месяца. В bat-файл добавьте команду очистки по возрасту файлов (forfiles в Windows) или используйте отдельный скрипт PowerShell.
Соблюдайте базовое правило резервного копирования: минимум две копии на разных носителях, одна — вне основной площадки. Практичная схема: локальная папка на отдельном диске или NAS плюс копирование в облачное хранилище или на сервер в другом помещении. Облачная копия защищает от пожара, кражи оборудования и шифровальщиков, которые часто добираются до сетевых папок.
Файловые базы заметно растут в размере .dt после выгрузки данных по сравнению с размером каталога — это нормально, формат хранит данные иначе. Зато .dt хорошо сжимается архиваторами: упаковка в 7z часто уменьшает файл в несколько раз, что экономит место и время передачи в облако.
Проверка того, что выгрузка действительно работает
Настроенная задача не равна рабочему резервному копированию. Раз в месяц выбирайте свежий архив и восстанавливайте его в тестовую базу: для .dt — через конфигуратор («Загрузить информационную базу»), для SQL-бэкапа — через RESTORE DATABASE на тестовом сервере. Откройте восстановленную базу, проверьте наличие последних документов.
Ежедневный контроль можно автоматизировать: проверяйте наличие свежего файла архива и его размер. Резкое уменьшение размера .dt по сравнению с предыдущими копиями — тревожный признак, как и отсутствие файла за прошедшие сутки. Простой вариант — скрипт, отправляющий письмо при отсутствии свежего архива.
Как проверить результат
Файл существует, размер сопоставим с предыдущими копиями
Файла нет, нулевой размер или резкое уменьшение размера
Код завершения 0x0, время выполнения стабильное
Ошибки, рост времени выполнения в разы
База открывается, последние документы на месте
Ошибка при загрузке .dt или отсутствие свежих данных
Запас места с учётом роста базы
Диск заполнен почти полностью, ротация не работает
FAQ: частые вопросы об автоматической выгрузке 1С
Можно ли выгружать файловую базу, пока в ней работают пользователи?
Выгрузка .dt пакетным режимом требует монопольного доступа и не запустится при активных сеансах. Варианты: выполнять задачу ночью, принудительно завершать сеансы перед выгрузкой или перейти на клиент-серверный вариант, где бэкап СУБД не прерывает работу.
Чем .dt отличается от бэкапа SQL-базы?
Файл .dt — универсальный формат платформы 1С: восстанавливается на любой СУБД и подходит для переноса и тестовых стендов, но создаётся медленно и требует остановки работы. Бэкап СУБД быстрее, работает «на горячую» и поддерживает разностные копии, но привязан к конкретной СУБД. Оптимально использовать оба.
Как часто нужно делать выгрузку?
Ориентируйтесь на допустимую потерю данных: сколько часов работы вы готовы вводить заново. Для активно используемых баз стандарт — ежедневно, при интенсивном вводе документов добавляют разностные копии СУБД в течение дня. Реже раза в день выгружать рабочую базу не рекомендуется.
Задача в планировщике отрабатывает, но файл не создаётся. Что проверить?
Чаще всего дело в правах: учётная запись задачи не имеет доступа к папке базы или архивов. Также проверьте, что в bat-файле нет кириллицы в неподходящей кодировке, пути указаны полностью, а пароль пользователя 1С не изменился. Добавьте запись вывода команды в лог-файл — текст ошибки укажет причину.
Нужно ли архивировать базу, если она работает в облаке?
Да. Облачный оператор делает собственные копии, но они защищают в первую очередь от его сбоев, а не от ошибок пользователей: случайно удалённый документ или испорченный справочник восстанавливать придётся из вашей выгрузки. Периодически скачивайте выгрузку данных и храните её локально.
Сколько места нужно под архивы?
Оцените размер одной копии (для .dt он обычно меньше размера рабочей базы, но зависит от состава данных) и умножьте на глубину хранения с запасом на рост базы. Например, при копии 5 ГБ и хранении 30 ежедневных архивов закладывайте не менее 150–200 ГБ, а лучше сжимайте архивы и следите за ротацией.
Что важно запомнить
Файловую базу выгружайте пакетным режимом конфигуратора через планировщик задач в нерабочее время, клиент-серверную — средствами СУБД плюс периодический .dt. Храните копии на разных носителях, настройте ротацию и регулярно проверяйте восстановление: архив, который не разворачивается, не считается резервной копией.