Файл выгрузки .dt не загружается: что можно спасти и как

· 9 мин

Содержание

Повреждённый DT-файл 1С штатными средствами не «лечится»: у платформы нет утилиты, которая чинит битую выгрузку. Восстановить базу можно тремя путями: найти целую копию того же файла, загрузить его в правильных условиях (подходящая версия платформы, 64-битный Конфигуратор, достаточно места) или собрать базу заново из других источников — CF-файла, XML-выгрузки, копии 1Cv8.1CD или бэкапа СУБД.

Сначала выясните, повреждён ли файл на самом деле. Часто выгрузка целая, а загрузка падает из-за версии платформы, нехватки памяти или прав. Такой файл восстанавливать не нужно — нужно поменять условия загрузки.

Почему DT-файл не загружается: диагностика

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

Причины, по которым загрузка не проходит:

  • 📦 Файл недокачан или обрезан. Копирование по сети прервалось, флешку выдернули, облако не досинхронизировало файл.
  • 💾 Битые сектора на диске, где лежит выгрузка или куда её копировали.
  • 🔢 Версия платформы ниже, чем та, в которой сделали выгрузку.
  • 🧠 Не хватает памяти. 32-битный Конфигуратор на большой базе упирается в лимит адресного пространства.
  • 📂 Мало места на диске с базой или во временной папке пользователя.
  • 🔐 Нет прав на запись в каталог файловой базы или в базу на сервере СУБД.
  • 🗄 Ошибки на стороне СУБД при загрузке в клиент-серверную базу : переполнен журнал транзакций, кончилось место под файлы данных.

Типичный текст ошибки при повреждённом файле — Ошибка формата потока. Его же можно увидеть, если выгрузку сделали не до конца или файл переименовали из другого формата.

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

Как проверить целостность файла

Сравните размер файла с исходным до байта. Если оригинал ещё доступен, сравните контрольные суммы.

В Windows:

certutil -hashfile "D:\Backup\base.dt" SHA256

В Linux:

sha256sum /backup/base.dt

Суммы совпали — файл цел, ищите причину в условиях загрузки. Не совпали — копия испорчена при переносе, берите файл из источника ещё раз.

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

Как правильно загрузить резервную копию DT

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

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

Через Конфигуратор

  1. В окне запуска 1С нажмите Добавить и создайте новую пустую информационную базу (без конфигурации).
  2. Откройте её в режиме Конфигуратора.
  3. Выберите Администрирование → Загрузить информационную базу.
  4. Укажите DT-файл и подтвердите загрузку.
  5. Дождитесь сообщения об успешной загрузке и предложения перезапустить Конфигуратор. Согласитесь.
  6. Запустите базу в режиме 1С:Предприятие и проверьте данные.

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

Из командной строки

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

"C:\Program Files\1cv8\8.3.24.1691\bin\1cv8.exe" DESIGNER /F "D:\Bases\Restore" /RestoreIB "D:\Backup\base.dt" /Out "D:\Backup\restore.log"

Путь к платформе подставьте свой: номер версии в нём должен совпадать с установленной у вас. Каталог D:\Bases\Restore должен содержать уже созданную пустую базу. После завершения откройте restore.log: там будет сообщение об успехе или текст ошибки.

Для клиент-серверной базы вместо /F используется /S "сервер\имябазы" плюс /N и /P с логином и паролем администратора базы.

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

Условия, при которых загрузка проходит

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

Спасение через текстовый формат: CF и XML

Если DT-файл не загружается ни в каких условиях, базу собирают из частей. Конфигурацию и данные восстанавливают отдельно.

Конфигурация

Источники конфигурации, по порядку надёжности:

  • 📄 CF-файл этой же конфигурации. Если доработок не было, подойдёт поставка типовой конфигурации того же релиза.
  • 🗂 Выгрузка конфигурации в XML-файлы. Её делают командой Конфигурация → Выгрузить конфигурацию в файлы, а загружают через Конфигурация → Загрузить конфигурацию из файлов. Если у программиста доработки лежат в XML или в системе контроля версий, конфигурация восстанавливается до последней сохранённой правки.
  • 🗄 Другая база с той же конфигурацией, например копия для тестов: из неё берут CF через Конфигурация → Сохранить конфигурацию в файл.

XML-формат удобен тем, что повреждение одного файла не губит всё. Испорченный модуль или форму можно поправить вручную или взять из старой версии, остальные объекты загрузятся.

Данные

С данными сложнее. Где их искать, кроме выгрузки:

  1. Копия файла 1Cv8.1CD для файловой базы — снимок каталога базы, сделанный при закрытой программе.
  2. Бэкап средствами СУБД для серверной базы — например, файл .bak MS SQL или дамп PostgreSQL.
  3. Теневые копии Windows. Щёлкните правой кнопкой по каталогу базы или выгрузок, откройте Свойства → Предыдущие версии. Если на диске включена защита системы, там могут быть старые версии файлов.
  4. История версий облака, если выгрузки синхронизируются с облачным диском.
  5. Выгрузка данных в XML обработкой «Выгрузка и загрузка данных XML», если её делали для переноса.

Если нашлась копия 1Cv8.1CD, но база с ней не открывается, у файловых баз есть утилита chdbfl.exe в каталоге bin платформы. Она проверяет и исправляет файл базы. Запускайте её только на копии файла, при закрытой базе.

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

Сравнение и объединение после восстановления

Когда база собрана из разных источников, надо проверить, что конфигурация совпадает с той, что была. Для этого в Конфигураторе есть сравнение.

Как сравнить восстановленную конфигурацию с эталоном

  1. Откройте восстановленную базу в Конфигураторе.
  2. Выберите Конфигурация → Сравнить конфигурации.
  3. В качестве второй конфигурации укажите CF-файл поставки или конфигурацию из файлов.
  4. Посмотрите отчёт: отличия покажут, какие доработки есть или потерялись.

Как вернуть доработки

Если вы загрузили типовой CF, а доработки остались в старом CF или XML, используйте Конфигурация → Сравнить, объединить с конфигурацией из файла. Отметьте галочками только нужные объекты и выполните объединение. После этого обновите конфигурацию базы данных.

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

Сравнивайте и объединяйте в копии базы. Неудачное объединение в рабочей базе может испортить структуру, и тогда понадобится ещё одна загрузка.

Пользователи и права после загрузки DT

Вместе с DT-файлом загружается и список пользователей базы: имена, роли, пароли, настройки аутентификации. Здесь чаще всего и спотыкаются.

Что проверить сразу после загрузки:

  • 👤 Пароль администратора. В восстановленной базе действуют пароли на момент выгрузки. Если пароль меняли позже, вводите старый.
  • 🔑 Аутентификация Windows. Если пользователи входили по доменной учётной записи, а базу развернули на другом компьютере или в другом домене, вход может не сработать. Проверьте привязку в Администрирование → Пользователи в Конфигураторе.
  • 🧩 Расширения и безопасный режим. Расширения из выгрузки загружаются вместе с базой. Если они перестали подключаться, проверьте их список и признак безопасного режима.
  • 🌐 Внешние подключения. Пути к обменам, общим каталогам, адреса веб-сервисов и регламентные задания переедут как были. На тестовой копии они могут начать обмен с рабочими системами.

Если разворачиваете копию рядом с рабочей базой, сразу отключите в ней регламентные задания и обмены, иначе копия отправит документы контрагентам или выгрузит данные в чужие узлы.

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

Как делать бэкапы, которые потом загрузятся

Битая выгрузка обычно обнаруживается в тот день, когда она нужна. Поэтому проверка копии важнее самой копии.

Схема, которая работает

  • 🕐 Выгрузка по расписанию через планировщик Windows и команду /DumpIB. Делайте её, когда в базе нет пользователей, чтобы данные были согласованы.
  • ✅ Тестовая загрузка раз в неделю: тот же /RestoreIB в отдельную пустую базу, с проверкой лога.
  • 🔢 Контрольная сумма рядом с каждым файлом: так видно, что копия не испортилась при переносе.
  • 🗂 Несколько поколений: дневные копии за неделю, недельные за месяц, месячные за год.
  • 🌍 Хранение в двух местах, одно из которых — вне офиса.
  • 🗄 Для серверных баз — бэкапы средствами СУБД в дополнение к DT. Они быстрее и позволяют восстановить базу на момент времени.

Пример ночной выгрузки:

set D=%date:~6,4%-%date:~3,2%-%date:~0,2%
"C:\Program Files\1cv8\8.3.24.1691\bin\1cv8.exe" DESIGNER /F "D:\Bases\Buh" /N "Admin" /P "пароль" /DumpIB "E:\Backup\buh_%D%.dt" /Out "E:\Backup\dump_%D%.log"
certutil -hashfile "E:\Backup\buh_%D%.dt" SHA256 > "E:\Backup\buh_%D%.sha256"

Разбор даты через %date% зависит от региональных настроек Windows: для формата ДД.ММ.ГГГГ пример верен, для другого поменяйте позиции символов. Пароль в bat-файле храните только там, куда нет доступа у посторонних, а для выгрузок заведите отдельного пользователя с нужными правами.

Проверка системы бэкапов
Выполнено: 0 / 6

Частые ошибки при спасении базы

  • ❌ Загрузка поверх рабочей базы «на пробу». Если файл битый, загрузка прервётся, а рабочая база может остаться в неработоспособном состоянии.
  • ❌ Попытки открыть .dt архиватором и что-то в нём поправить. Это закрытый формат платформы, правка вручную его не восстанавливает.
  • ❌ Хранение единственной выгрузки на том же диске, что и база. Отказал диск — пропали обе.
  • ❌ Перезапись старой выгрузки новой с тем же именем. Если новая окажется битой, предыдущей уже нет.
  • ❌ Работа в восстановленной копии сразу после загрузки без проверки остатков и последних документов. Расхождения обнаружатся позже, когда в базу уже внесут новые данные.

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

Можно ли открыть DT-файл без загрузки в базу?
Нет. Посмотреть содержимое выгрузки можно, только загрузив её в информационную базу. Для просмотра создайте отдельную пустую базу.
Что делать, если DT-файл был удалён?
Сразу прекратите запись на этот диск и попробуйте программу восстановления файлов или «Предыдущие версии» в свойствах папки. Чем меньше записи после удаления, тем выше шанс.
Сколько места нужно для загрузки DT?
Ориентируйтесь на объём в несколько раз больше файла выгрузки: данные в .dt сжаты, а в базе хранятся без такого сжатия. Плюс место во временной папке.
Можно ли загрузить DT-файл из файловой базы в серверную?
Да. Выгрузка не зависит от варианта работы базы, поэтому так и переносят базы с файлового варианта на сервер и обратно.
Сохраняется ли в DT история изменений и журнал регистрации?
Журнал регистрации хранится отдельно от базы и в выгрузку не входит. Если он нужен, копируйте каталог журнала вручную.