Администрирование · 12 мин
Как восстановить конфигурацию 1С: рабочие способы
Как восстановить конфигурацию 1С из резервной копии, файла .dt или .cf, из копии базы SQL. Пошаговые инструкции, проверка результата и типичные ошибки.
Потеря или повреждение конфигурации 1С — одна из самых неприятных ситуаций для администратора: база перестаёт открываться, пользователи не могут работать, а обновления откатываются с ошибками. Хорошая новость в том, что в подавляющем большинстве случаев конфигурацию можно восстановить — из резервной копии, файла выгрузки .dt, файла конфигурации .cf, из хранилища конфигурации или из копии базы данных на уровне СУБД.
Выбор способа зависит от того, что именно потеряно: только конфигурация (метаданные) или вместе с данными, а также от того, какие резервные копии делались раньше. Если копий нет совсем, вариантов становится заметно меньше, но и тогда иногда удаётся извлечь конфигурацию из повреждённой базы или восстановить её из типовой поставки с последующим переносом изменений.
Ниже разобраны все рабочие сценарии — от простой загрузки .dt до восстановления через SQL Server. Перед любыми действиями сделайте копию текущего состояния базы, даже если она повреждена: это последний шанс откатиться, если восстановление пойдёт не по плану.
Как определить, что именно потеряно
Перед восстановлением важно понять масштаб проблемы. Конфигурация — это структура метаданных (справочники, документы, отчёты, код), а данные — это содержимое таблиц. Эти сущности могут пострадать по отдельности или вместе, и тактика восстановления отличается.
Типичные признаки повреждения конфигурации: база не открывается в конфигураторе с ошибками формата, при запуске возникают сообщения «Ошибка формата потока», «Нарушена целостность структуры конфигурации», конфигурация базы данных расходится с конфигурацией поставщика. Если база открывается, но пропали данные документов или справочников — это другая проблема, и восстановление конфигурации её не решит.
Проверьте, открывается ли копия базы на другом компьютере
Сравните конфигурацию базы данных с конфигурацией поставщика
Проверьте наличие резервной копии, которую 1С предлагала сделать перед обновлением
Способ 1: восстановление из файла выгрузки .dt
Файл .dt — это полная выгрузка информационной базы: конфигурация вместе со всеми данными. Это самый надёжный и универсальный способ, если регулярная выгрузка выполнялась вручную или по расписанию. Загрузка .dt полностью замещает текущее содержимое базы, поэтому все изменения, сделанные после даты выгрузки, будут потеряны.
Порядок действий: запустите конфигуратор, откройте нужную базу (или создайте новую пустую), перейдите в меню «Администрирование → Загрузить информационную базу» и укажите файл .dt. После загрузки платформа предложит перезапустить конфигуратор — согласитесь. Процесс может занять от нескольких минут до нескольких часов в зависимости от объёма базы.
- 1Сделайте копию текущей (пусть и повреждённой) базы в отдельный каталог
- 2Запустите конфигуратор и откройте пустую или повреждённую базу
- 3Выберите Администрирование → Загрузить информационную базу и укажите файл .dt
- 4Дождитесь окончания загрузки и перезапустите конфигуратор по запросу платформы
- 5Выполните тестирование и исправление, затем проверьте работу базы в пользовательском режиме
Учтите ограничение: загрузка .dt в клиент-серверную базу выполняется через конфигуратор, но при больших объёмах надёжнее восстанавливать данные средствами СУБД, а .dt использовать только для переноса конфигурации. Также файл .dt, созданный на более новой версии платформы, не загрузится на старую — проверьте совместимость версий заранее.
Способ 2: восстановление конфигурации из файла .cf
Файл .cf содержит только конфигурацию без данных. Этот вариант подходит, когда данные в базе целы, а повреждены именно метаданные — например, после неудачной доработки или сбойного обновления. Также .cf используется, чтобы вернуть базу к типовой конфигурации поставщика.
Для загрузки откройте конфигуратор, убедитесь, что конфигурация открыта («Конфигурация → Открыть конфигурацию»), затем выберите «Конфигурация → Загрузить конфигурацию из файла» и укажите .cf. Если база находится на поддержке, платформа предложит вариант загрузки с объединением или полной заменой — для восстановления обычно выбирают полную замену. После загрузки выполните «Обновить конфигурацию базы данных» (клавиша F7).
Если конфигуратор не открывает базу из-за повреждения метаданных, загрузить .cf напрямую не получится. В этом случае сначала попробуйте запустить утилиту chdbfl.exe (для файловых баз) или создайте новую пустую базу, загрузите туда .cf, а затем перенесите данные через выгрузку-загрузку или обмен.
Способ 3: восстановление из хранилища конфигурации
Если разработка велась через хранилище конфигурации, у вас есть полная история изменений, и восстановить конфигурацию можно до любой версии. Это самый гибкий сценарий для командной разработки: даже если рабочая база разрушена полностью, хранилище сохраняет все версии метаданных.
Создайте новую пустую базу, откройте конфигуратор и подключитесь к хранилищу: «Конфигурация → Хранилище конфигурации → Подключиться». Затем выполните «Получить из хранилища» с указанием нужной версии — по умолчанию берётся последняя. После получения обновите конфигурацию базы данных. Данные при этом не восстанавливаются — их придётся переносить отдельно из резервной копии.
Хранилище конфигурации — не резервная копия базы. Оно хранит только метаданные и историю версий. Администраторы иногда путают эти понятия и обнаруживают отсутствие данных только в момент аварии. Держите отдельно копию хранилища (файл 1cv8ddb) и отдельно выгрузки данных.
Способ 4: восстановление базы на уровне СУБД и файлов
Для клиент-серверных баз на MS SQL Server, PostgreSQL или Oracle основной механизм резервного копирования — штатные средства СУБД. Восстановление выполняется через SQL Server Management Studio (Restore Database) или pg_restore для PostgreSQL. После восстановления базы данных убедитесь, что в консоли кластера 1С база указывает на восстановленную БД, и проверьте права пользователя СУБД.
Для файловых баз всё проще: вся база — это каталог с файлом 1Cv8.1CD. Восстановление сводится к копированию архивной копии каталога на место рабочего. Важно: копировать файл 1Cv8.1CD нужно только при остановленной работе всех пользователей, иначе копия получится несогласованной и может не открыться.
Сравнение вариантов восстановления
Восстанавливает конфигурацию и данные вместе. Подходит для полного отката, но затирает всё текущее содержимое базы.
Восстанавливает только конфигурацию, данные сохраняются. Не сработает, если база не открывается в конфигураторе.
Самый быстрый способ для больших клиент-серверных баз. Требует доступа к серверу БД и навыков администрирования СУБД.
Возвращает любую версию метаданных с историей изменений. Данные не восстанавливает.
Что делать, если резервной копии нет
Ситуация без копий — худшая, но не всегда безнадёжная. Для файловой базы первым шагом запустите утилиту chdbfl.exe из каталога bin установленной платформы: укажите файл 1Cv8.1CD, включите проверку физической целостности и исправление ошибок. Утилита часто восстанавливает базу после сбоев питания и ошибок файловой системы.
Второй инструмент — «Тестирование и исправление» в конфигураторе («Администрирование → Тестирование и исправление»). Отметьте пункты реиндексации, проверки логической и ссылочной целостности. Для клиент-серверных баз аналогичные проверки выполняются средствами СУБД (например, DBCC CHECKDB для MS SQL).
Если конфигурация была типовой без доработок, можно установить чистый шаблон той же версии конфигурации, создать из него пустую базу и перенести туда данные из повреждённой базы — если она хотя бы частично открывается. Для переноса используют стандартную обработку «Выгрузка и загрузка данных XML» или универсальный обмен данными.
Как проверить результат восстановления
После любого восстановления не спешите открывать доступ пользователям. Сначала выполните полное тестирование и исправление, затем запустите базу в режиме 1С:Предприятие и проверьте ключевые операции: открытие основных справочников, проведение типового документа, формирование регламентированного отчёта и оборотно-сальдовой ведомости.
Сверьте контрольные цифры с данными до сбоя: остатки по счетам, складские остатки, взаиморасчёты. Если восстановление делалось из старой копии, составьте список документов, которые нужно ввести повторно за период с даты копии до момента сбоя.
Как проверить результат
База открывается без ошибок, конфигурация обновляется без предупреждений
Ошибки формата потока, расхождение конфигураций
Проверки завершаются без ошибок или с исправленными замечаниями
Повторяющиеся необратимые ошибки целостности
Остатки и обороты совпадают с данными до сбоя
Расхождения в суммах, пропавшие документы
Как организовать резервное копирование, чтобы восстановление занимало минуты
Лучшее восстановление — то, которое делается из свежей копии за несколько минут. Минимальный набор: ежедневная выгрузка .dt по расписанию (или бэкап средствами СУБД), хранение копий на отдельном носителе или сервере, периодическая проверка восстановления на тестовой базе. Копия, которую ни разу не пробовали восстановить, нельзя считать рабочей.
Для файловых баз настройте пакетное задание с остановкой сеансов и копированием каталога базы. Для клиент-серверных — регламентные задания СУБД с полным и разностным бэкапом. Храните несколько поколений копий: ежедневные за неделю, еженедельные за месяц, месячные — дольше, особенно перед отчётными периодами.
Что важно запомнить
Основной инструмент восстановления — файл .dt через конфигуратор; для отдельной конфигурации используйте .cf, для больших баз — бэкапы СУБД. Перед восстановлением всегда копируйте текущее состояние базы, а после — выполняйте тестирование и сверку итогов. Регулярные проверенные копии превращают аварию из катастрофы в рутинную операцию.
Частые вопросы
Можно ли восстановить конфигурацию без потери данных, введённых после даты копии?
Напрямую при загрузке .dt — нет, база замещается целиком. Обходной путь: восстановите копию в отдельную базу, а затем перенесите из текущей базы документы за недостающий период через обработку «Выгрузка и загрузка данных XML» или универсальный обмен. Это трудоёмко, поэтому чем свежее копия, тем меньше ручной работы.
База не открывается даже в конфигураторе. Что делать в первую очередь?
Для файловой базы запустите chdbfl.exe из каталога платформы и проверьте физическую целостность файла 1Cv8.1CD. Для клиент-серверной проверьте базу средствами СУБД. Только после этого пытайтесь открыть конфигуратор и загружать копию. Работайте с копией файла, а не с оригиналом.
Чем отличается .dt от .cf?
Файл .dt — полная выгрузка информационной базы: конфигурация плюс все данные, пользователи и настройки. Файл .cf — только конфигурация (метаданные и код) без данных. Для полного восстановления базы нужен .dt или бэкап СУБД, для восстановления только структуры — .cf.
Можно ли загрузить .dt, сделанный на другой версии платформы?
Загрузка на более новую версию платформы обычно проходит успешно — при первом открытии выполнится конвертация. Обратная загрузка (с новой версии на старую) невозможна. Установите платформу не ниже той версии, на которой делалась выгрузка.
Как вернуть базу к типовой конфигурации, если она сильно доработана?
Установите шаблон нужной версии конфигурации, выгрузите из него .cf и загрузите в рабочую базу с полной заменой. Все доработки будут удалены, поэтому предварительно сохраните их: сравните конфигурации, выгрузите изменённые модули и формы. Данные при такой загрузке сохраняются, если структура объектов совместима.
Как часто нужно делать резервные копии 1С?
Минимум — ежедневно для активно работающих баз, обязательно перед каждым обновлением конфигурации и платформы. Для баз с интенсивным вводом документов имеет смысл дополнительное копирование в течение дня (разностные бэкапы СУБД). Критично хранить копии на физически отдельном носителе и периодически проверять их восстановлением.