Загрузка DT-файла в 1С: как перенести обновлённую базу и не потерять данные
Содержание
DT-файл сам конфигурацию не обновляет. Это полный слепок информационной базы: данные, конфигурация, настройки. Обновить 1С «через DT» значит загрузить в базу слепок, снятый с уже обновлённой копии, либо загрузить старый слепок в более новую платформу, которая сама приведёт структуру к своему формату. Загрузка делается в Конфигураторе: Администрирование → Загрузить информационную базу.
Способов два, и выбирают их по ситуации. Через Конфигуратор удобно разово и под контролем. Через командную строку удобно, когда баз много или обновление идёт ночью по расписанию. Результат один: старое содержимое базы заменяется содержимым файла.
Загрузка DT полностью перезаписывает базу. Всё, что сделали пользователи после выгрузки файла, пропадёт. Поэтому главное в этой теме не сама кнопка, а подготовка и откат.
Когда DT подходит, а когда лучше другой способ
DT не заменяет обычное обновление через Конфигурация → Поддержка → Обновить конфигурацию. Он нужен в других случаях:
- 🧪 вы обновили копию базы на тестовом стенде, проверили и хотите перенести результат в рабочую базу;
- 🚚 переезд базы на другой сервер или смена СУБД (файловая → клиент-серверная и обратно);
- 🔧 восстановление после сбоя, когда рабочая база повреждена, а свежая выгрузка есть;
- ⬆️ переход на новую версию платформы вместе с базой, когда нужно «пересобрать» структуру.
| Способ | Когда выбирать | Риски |
|---|---|---|
Обновление конфигурации из файла .cf/.cfu | Типовое обновление релиза, данные остаются как есть | Нужна совместимость с текущим релизом, возможны конфликты при доработках |
| Загрузка DT из обновлённой копии | Прогнали обновление на копии, теперь переносим готовый результат | Потеряете всё, что ввели в рабочей базе после снятия копии |
| Загрузка старого DT в новую платформу | Миграция на новую платформу или сервер | Долгий первый запуск, возможны ошибки конвертации |
| Автоматическая загрузка по расписанию | Много однотипных баз, тестовые стенды | Ошибка скрипта перезапишет живую базу |
Если вам нужно просто поставить свежий релиз типовой конфигурации, DT не нужен. Он оправдан там, где важно проверить обновление на копии и перенести уже проверенный результат.
Что подготовить до загрузки файла
Минимальный набор перед любой загрузкой:
- ✅ Выгрузить DT текущей рабочей базы. Это ваша страховка, об откате ниже.
- ✅ Проверить версию платформы, которой создан файл, и версию, под которой будете загружать.
- ✅ Убедиться, что на диске есть место минимум в три размера DT: сам файл, развёрнутая база, запас под временные данные.
- ✅ Закрыть всех пользователей и запретить новые подключения.
- ✅ Скопировать каталоги внешних отчётов, обработок и расширений, если они лежат отдельно от базы.
Совместимость версий платформы
Правило простое. Платформа может загрузить DT , созданный той же или более старой версией. DT от более новой версии в старую платформу не загрузится.
Узнать, чем создан файл, можно заранее. Если у вас есть только DT и вы не знаете, откуда он, спросите у того, кто выгружал, версию вида 8.3.xx.xxxx. Заглядывать внутрь файла не нужно.
Если платформа на сервере старше, чем на машине, где снимали DT, сначала обновите платформу на сервере, потом загружайте.
Размер и время
Ориентиры для понимания масштаба (примерно, зависят от диска и СУБД):
- база 1 ГБ: выгрузка 5-10 минут, загрузка 10-20 минут;
- база 20 ГБ: выгрузка около часа, загрузка 1,5-3 часа;
- база 100 ГБ: планируйте окно на ночь или выходные.
DT сжат, и по размеру обычно в 3-5 раз меньше самой базы. Но развернуть его всё равно придётся целиком.
Загрузка DT в Конфигураторе: пошаговый порядок
Это базовый способ. Работает и для файловой, и для клиент-серверной базы.
Шаг 1. Выгрузите страховочную копию
- Запустите 1С в режиме Конфигуратора.
- Откройте
Администрирование→Выгрузить информационную базу. - Укажите путь и имя файла. Лучше вписать дату в имя:
buh_2026-10-06_before.dt. - Дождитесь сообщения об окончании.
Проверьте размер файла. Если он подозрительно маленький (несколько килобайт), выгрузка не удалась.
Шаг 2. Закройте пользователей
Загрузка требует монопольного доступа. Откройте консоль кластера или, для файловой базы, список активных пользователей: Администрирование → Активные пользователи. Завершите сеансы. Для серверной базы включите блокировку начала сеансов в консоли администрирования.
Шаг 3. Загрузите файл
- Откройте базу в Конфигураторе под пользователем с полными правами.
- Выберите
Администрирование→Загрузить информационную базу. - Укажите нужный
.dtи подтвердите замену. - Не прерывайте процесс, даже если окно «зависло». На крупных базах индикатор может стоять на месте по несколько минут.
Шаг 4. Первый запуск
Запустите базу в обычном режиме. Если файл был снят с более старой версии конфигурации или платформы, 1С предложит выполнить обновление информационной базы. Согласитесь и дождитесь окончания. Закрывать окно на этом этапе нельзя.
Администрирование → Загрузить информационную базу, выбор файла, подтверждение замены. Процесс не прерывать.Командная строка и клиент-серверный вариант
Когда баз много или нужен запуск по расписанию, Конфигуратор вручную неудобен. Тот же результат даёт пакетный режим.
Файловая база
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /F "D:\bases\buh" /N "Админ" /P "пароль" /RestoreIB "D:\backup\buh.dt" /Out "D:\backup\restore.log"
Здесь /F задаёт путь к каталогу файловой базы, /RestoreIB загружает файл, /Out пишет журнал. Для выгрузки используйте /DumpIB вместо /RestoreIB.
Серверная база
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /S "server1\buh" /N "Админ" /P "пароль" /RestoreIB "D:\backup\buh.dt" /Out "D:\backup\restore.log"
Параметр /S берёт имя сервера и базы из кластера. Номер платформы в пути подставьте свой.
Командная строка не спрашивает подтверждения. Если указать не ту базу, она будет перезаписана без вопросов. Проверяйте строку подключения до запуска.
Что отличается на сервере
На сервере важны три вещи, которых нет в файловом режиме:
- 🗄️ СУБД. Загрузка DT пересоздаёт таблицы базы в PostgreSQL или MS SQL. Нагрузка на диск сервера высокая, делайте это вне рабочего времени.
- 🔒 Блокировки. Пока в консоли кластера висят сеансы, загрузка либо не начнётся, либо упадёт с ошибкой монопольного доступа.
- 🧩 Платформа. На сервере должна стоять та же версия, что и в строке запуска. Версия на рабочей станции администратора ничего не решает.
Для крупных серверных баз часть администраторов предпочитает утилиту ibcmd. Она работает прямо с СУБД и не поднимает графический клиент. Синтаксис зависит от версии платформы, поэтому смотрите справку именно вашей версии, а не копируйте чужие примеры.
Что проверить после загрузки
Файл загрузился, база открылась. Это ещё не конец. Пройдите по короткому списку:
Отдельно остановитесь на пункте про регламентные задания и обмены. Если вы загрузили DT рабочей базы на тестовый стенд, задания обмена и рассылки продолжат работать. Тестовая копия начнёт слать письма клиентам и забирать данные из боевых систем. Перед первым запуском копии отключите регламентные задания и смените адреса обмена.
Типичные ошибки при загрузке
Ниже самое частое, с чем сталкиваются, и что с этим делать.
Если загрузка идёт слишком долго
Не всегда это зависание. Признаки нормальной работы: грузится процессор, растёт нагрузка на диск, в каталоге временных файлов появляются данные. Если три часа ничего не меняется ни в диске, ни в процессоре, процесс стоит. Тогда остановите его и повторите загрузку на свежей копии.
Откат: как вернуть всё как было
Откат возможен только при наличии страховочной копии. Без неё вернуть состояние «до» нельзя. Пошаговый порядок:
- 🛑 Закройте пользователей, как перед загрузкой.
- 📂 Возьмите файл
…_before.dt, выгруженный на шаге 1. - ⬇️ Загрузите его тем же способом, что и обновляли.
- 🔍 Проверьте версию конфигурации и контрольные остатки.
Для серверных баз удобнее держать и резервную копию средствами СУБД. Она восстанавливается быстрее, чем DT, особенно на базах от 50 ГБ. DT при этом остаётся переносимым вариантом.
Храните страховочный DT не рядом с базой, а на отдельном диске или в другом месте. Если рядом с базой погиб диск, копия на том же диске погибла вместе с ней.
Автоматизация загрузки и выгрузки
Когда выгрузок много, их стоит автоматизировать. Простой каркас:
- 📅 планировщик Windows запускает bat-файл ночью;
- 📝 в bat пишется вызов
1cv8.exe DESIGNER … /DumpIBс датой в имени файла; - 🧹 тот же скрипт удаляет копии старше заданного срока;
- 📨 по окончании пишется лог, а при ошибке уходит уведомление администратору.
Пример выгрузки с датой в имени:
set STAMP=%date:~6,4%-%date:~3,2%-%date:~0,2%
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" DESIGNER /S "server1\buh" /N "Админ" /P "пароль" /DumpIB "D:\backup\buh_%STAMP%.dt" /Out "D:\backup\dump_%STAMP%.log"
forfiles /p "D:\backup" /m buh_*.dt /d -14 /c "cmd /c del @path"
Формат даты в %date% зависит от региональных настроек Windows, поэтому проверьте вывод на своей машине.
Автоматическую загрузку на рабочую базу не настраивайте. Автоматизировать разумно выгрузку и загрузку на тестовые стенды, где перезапись ожидаема. Для боевой базы загрузка должна идти только вручную, под контролем.
Пароль в bat лежит открытым текстом. Ограничьте права на файл и используйте отдельную учётку с минимально нужными правами.