Обновление платформы и конфигурации 1С через файл .dt

· 9 мин

Содержание

Файл .dt сам по себе ничего не обновляет. Он хранит копию информационной базы: данные и конфигурацию на момент выгрузки. Обновление происходит в два приёма: вы переносите базу под новую платформу, а затем накатываете новый релиз конфигурации. Файл .dt нужен как страховка и как «транспорт» между базами.

Когда это работает: платформа новее, чем та, в которой сделана выгрузка. Обратно не получится. Файл .dt, созданный на новой платформе, на старой не загрузится. Поэтому порядок всегда один: сначала копия, потом обновление.

Какой метод обновления выбрать и что подготовить

Через .dt обновляют не всегда. Часто достаточно штатных механизмов. Сравните варианты.

МетодКогда подходитРиск
Установка новой платформы поверх, затем открытие базыОбновление платформы на том же компьютере или сервереНизкий, если есть копия
Обновление конфигурации из файла поставки (.cfu или .cf)Новый релиз типовой конфигурацииСредний: идёт реструктуризация таблиц
Выгрузка .dt → загрузка в новую базуПеренос на другой сервер, смена режима файловая/клиент-серверная, «чистая» база после сбояНизкий, но долго на больших объёмах
Создание базы из шаблона нового релиза и загрузка данныхРедкий путь: база сильно поврежденаВысокий, нужен опыт

Перед работой проверьте пять вещей:

  • 💾 Свободное место на диске. Файл .dt сжат, но для безопасности берите объём не меньше размера самой базы.
  • 👥 В базе никого нет. Пользователей отключают в консоли кластера или через список активных пользователей.
  • 🔑 Вы входите с правами администратора. Для выгрузки и загрузки нужна роль полных прав.
  • 🧩 Известна версия платформы, в которой работает база сейчас. Её видно в окне «О программе» и в списке баз при запуске.
  • 📦 Дистрибутив нужной платформы и (если обновляете конфигурацию) файл поставки уже скачаны.

Файловую базу проще всего скопировать целиком, это папка с файлом 1Cv8.1CD. Но копия папки и .dt — не одно и то же: .dt переносится между платформами и режимами, а папка нет.

Выгрузка базы в формат DT по шагам

Работаем в Конфигураторе. Запустите 1С, в списке баз выберите нужную, нажмите «Конфигуратор».

  1. Откройте меню «Администрирование».
  2. Выберите «Выгрузить информационную базу».
  3. Укажите папку и имя файла. Расширение .dt подставится само.
  4. Подождите окончания. Окно прогресса покажет стадии.

Имя файла лучше сделать говорящим: buh_2024-05-12_before_update.dt. Через месяц вы поймёте, что это за копия.

Что попадает в файл

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

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

Выгрузка с сервера

Если база клиент-серверная, действия те же. Но следите за двумя моментами. Первый: файл создаётся на стороне клиента, то есть на вашем компьютере, а не на сервере, поэтому ему нужна быстрая сеть. Второй: на время выгрузки блокируйте регламентные задания, иначе база изменится прямо во время копирования, и файл получится «рваным» по времени.

Загрузка DT и обновление: порядок действий

Теперь у вас есть копия. Дальше два сценария.

Сценарий 1. Платформа обновилась, база осталась на месте

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

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

Сценарий 2. Перенос в новую пустую базу

  1. Создайте пустую базу через кнопку «Добавить» в окне запуска, вариант «Создание новой информационной базы», пункт «Создание информационной базы без конфигурации».
  2. Откройте её в Конфигураторе.
  3. Выберите «Администрирование» → «Загрузить информационную базу».
  4. Укажите файл .dt и подтвердите.

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

Накатываем новый релиз

После загрузки .dt в базу под новой платформой:

  1. В Конфигураторе откройте «Конфигурация» → «Поддержка» → «Обновить конфигурацию ».
  2. Выберите файл поставки и пройдите мастер.
  3. Примите изменения и нажмите обновление конфигурации базы данных (клавиша F7 в главном окне Конфигуратора).
  4. Откройте базу в пользовательском режиме. Платформа запустит обработчики обновления, это может занять от минут до часа.
Что у вас на руках?

Автоматизация через консольные ключи

Выгрузку удобно ставить в расписание. Конфигуратор умеет работать без окон.

Для файловой базы:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER /F "D:\bases\buh" /N "Админ" /P "пароль" /DumpIB "D:\backup\buh.dt" /DisableStartupMessages /Out "D:\backup\dump.log"

Для клиент-серверной:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER /S "srv1c\buh" /N "Админ" /P "пароль" /DumpIB "D:\backup\buh.dt" /DisableStartupMessages /Out "D:\backup\dump.log"

Загрузка выглядит симметрично, меняется только ключ:

"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" DESIGNER /F "D:\bases\newbuh" /N "Админ" /P "пароль" /RestoreIB "D:\backup\buh.dt" /Out "D:\backup\restore.log"

Что означают ключи:

  • /F — путь к файловой базе, /S — сервер и имя базы в кластере.
  • /N и /P — имя и пароль пользователя.
  • /DumpIB — выгрузить, /RestoreIB — загрузить.
  • /Out — файл журнала. Без него вы не узнаете, чем всё закончилось.
  • /DisableStartupMessages — подавляет окна с вопросами.

После загрузки и смены конфигурации структуру базы обновляют ключом /UpdateDBCfg. Его можно добавить в тот же вызов или запустить отдельной строкой.

Номер версии платформы в пути меняется после каждого обновления. Если скрипт перестал работать «сам», проверьте путь к 1cv8.exe первым делом.

Скрипт стоит завернуть в проверку: если в журнале нет слова об ошибке, а размер файла больше нуля, копию считаем успешной. Нулевой .dt встречается чаще, чем хочется.

Перед запуском обновления
Выполнено: 0 / 6

Типичные ошибки при работе с DT и как их лечить

Диагностика: выберите симптом

Ещё три причины, о которых забывают:

  • 🚫 Выгрузка из базы с блокировкой. Если база заблокирована для работы или идёт обновление, выгрузка завершится ошибкой или пустым файлом.
  • 🔤 Кириллица и пробелы в путях при работе из командной строки. Берите пути в кавычки, а скрипты сохраняйте в нужной кодировке.
  • 🧱 Антивирус. Он сканирует растущий файл на лету и замедляет запись в разы. Добавьте папку бэкапов в исключения.

Выгрузка и загрузка больших баз: как ускорить

База в 50–100 ГБ выгружается часами. Что реально помогает.

  1. Диск. Пишите на SSD, а не на сетевую папку. Это самое заметное улучшение. Сетевая шара может добавить в два-три раза.
  2. Чистка перед выгрузкой. Удалите ненужное: журнал регистрации очищают по расписанию, устаревшие данные закрывают через сервисные обработки. Меньше данных — меньше файл.
  3. Окно обслуживания. Делайте копию ночью или в выходные, когда нет фоновых заданий.
  4. Тестирование и исправление базы выполняйте отдельно и заранее, а не в день обновления. Это отдельная процедура, которая сама может идти несколько часов.
  5. Для клиент-серверной базы СУБД умеет делать собственные копии быстрее. .dt тогда держите как переносимую копию, а не как единственную.

Оценка времени. Ориентиры очень примерные, зависят от железа:

Размер базыВыгрузкаЗагрузка
до 5 ГБ5–15 минут10–30 минут
20 ГБ30–90 минут1–3 часа
80 ГБ и большенесколько часовполдня и более

Загрузка почти всегда дольше выгрузки: платформа пересоздаёт индексы.

Не запускайте обновление «на авось» перед отчётным сроком. Закладывайте на всё время загрузки двойной запас. Если уложились раньше, это хорошо.

Что проверить после обновления и как откатиться

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

  • 📊 Сформируйте пару привычных отчётов за прошлый период и сравните цифры с теми, что были до обновления. Оборотно-сальдовая ведомость за закрытый месяц должна совпасть до копейки.
  • 🧾 Проведите тестовый документ и удалите его. Так вы увидите, работают ли обработчики проведения.
  • 🧩 Откройте список расширений и убедитесь, что все они подключены и без предупреждений.
  • 🖨 Распечатайте одну типовую форму и одну свою. Самописные печатные формы ломаются первыми.
  • 🔄 Если база участвует в обмене, запустите один цикл обмена вручную и посмотрите журнал.

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

Откат

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

Данные, введённые пользователями после выгрузки, при откате пропадут. Договоритесь, что в окне обновления никто в базе не работает, иначе придётся вводить документы повторно.

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

Можно ли загрузить `.dt` из новой платформы в старую?
Нет. Платформа не умеет понижать версию формата. Нужна платформа той же версии или новее.
Обновит ли загрузка `.dt` конфигурацию до последнего релиза?
Нет. После загрузки в базе будет та конфигурация, что лежала в файле. Новый релиз ставится отдельно из файла поставки.
Чем `.dt` отличается от копии папки с базой?
Копия папки работает только для файловой базы и только в той же версии платформы. .dt переносится между платформами и между файловым и серверным режимом.
Сохраняются ли пользователи и пароли?
Да, список пользователей и их роли выгружаются вместе с базой. Настройки кластера и привязки к серверу не переносятся.
Нужно ли останавливать сервер 1С на время выгрузки?
Не обязательно. Нужно, чтобы в базе не было активных сеансов и не шли регламентные задания.
Как проверить, что выгрузка получилась рабочей?
Загрузите её в пустую тестовую базу и откройте. Размер файла и отсутствие ошибок в журнале ещё не гарантия.