Администрирование · 12 мин
Как восстановить 1С из архивной копии
Как восстановить базу 1С из архивной копии: выгрузка dt, файловая и клиент-серверная база, проверка результата, типичные ошибки и меры безопасности данных.
Восстановление 1С из архивной копии — стандартная процедура, которая требуется после сбоя оборудования, повреждения базы, ошибочного удаления данных или переноса системы на другой компьютер. Способ восстановления зависит от того, как была создана копия: через выгрузку в файл .dt, копирование файловой базы или средствами СУБД для клиент-серверного варианта.
Главное правило перед началом: никогда не восстанавливайте копию поверх рабочей базы, пока не убедитесь, что текущие данные больше не нужны. Восстановление из выгрузки .dt полностью заменяет содержимое информационной базы, и отменить эту операцию нельзя. Если в текущей базе есть свежие данные, сначала сделайте её собственную копию.
Ниже разобраны все основные сценарии: восстановление из файла .dt, развёртывание файловой копии каталога, восстановление клиент-серверной базы, а также проверка результата и типичные ошибки, которые приводят к потере данных.
Определите, какой тип архивной копии у вас есть
Порядок восстановления полностью зависит от формата копии. В практике 1С встречаются три основных варианта, и перепутать их — частая причина неудач.
Первый вариант — файл выгрузки с расширением .dt, созданный через конфигуратор («Администрирование» → «Выгрузить информационную базу») или через регламентное задание. Второй — копия каталога файловой базы, внутри которого находится файл 1Cv8.1CD. Третий — дамп базы данных, созданный средствами MS SQL Server, PostgreSQL или другой СУБД для клиент-серверного режима.
Восстанавливается через «Загрузить информационную базу» в конфигураторе
Достаточно скопировать каталог и добавить базу в список
Восстанавливается средствами сервера баз данных, затем база регистрируется в кластере 1С
Если копию делал другой сотрудник или сторонняя организация, уточните способ создания архива. Файл .dt нельзя восстановить как каталог, а дамп SQL нельзя загрузить через конфигуратор — попытка приведёт к ошибке, а иногда и к повреждению целевой базы.
Подготовка: что сделать до восстановления
Прежде чем запускать восстановление, выполните несколько обязательных действий. Они занимают несколько минут, но защищают от необратимой потери данных.
Во-первых, проверьте целостность самой копии. Убедитесь, что файл .dt или каталог базы полностью скопирован с носителя, его размер соответствует ожидаемому, а архив не находится на том же диске, который вышел из строя. Во-вторых, сохраните текущее состояние базы, даже если она повреждена: иногда из «битой» базы удаётся извлечь данные, которых нет в архиве.
В-третьих, завершите работу всех пользователей с базой. Загрузка информационной базы в конфигураторе требует монопольного доступа: если кто-то подключён, операция не начнётся. Для клиент-серверной базы также убедитесь, что у вас есть права администратора кластера и СУБД.
Восстановление из файла выгрузки .dt
Это самый универсальный способ: файл .dt содержит и конфигурацию, и данные, и его можно загрузить в пустую или существующую базу независимо от того, в каком режиме она работала раньше.
- 1Создайте новую пустую базу в списке информационных баз или откройте существующую, которую планируете заменить
- 2Запустите базу в режиме «Конфигуратор»
- 3Откройте меню «Администрирование» → «Загрузить информационную базу»
- 4Укажите путь к файлу .dt и подтвердите операцию
- 5Дождитесь окончания загрузки и реструктуризации — при больших базах это может занять значительное время
- 6Запустите базу в режиме «Предприятие» и проверьте данные
Загрузка в пустую базу предпочтительнее, чем поверх рабочей: так вы исключаете ситуацию, когда в случае ошибки остаётся полуразрушенная база без возможности отката. После успешной проверки восстановленную базу можно подключить пользователям вместо старой.
Учтите ограничение: файл .dt может быть загружен только в базу на платформе той же версии или новее, чем та, на которой создавалась выгрузка. Если платформа на компьютере старше, обновите её до нужного релиза. Также для загрузки больших выгрузок требуется заметный объём оперативной памяти и свободного места на диске.
Восстановление файловой базы из копии каталога
Если архив представляет собой копию каталога файловой базы, восстановление сводится к простому копированию. Найдите в архиве файл 1Cv8.1CD — это и есть база данных вместе с конфигурацией.
Скопируйте весь каталог на новое место, например на диск с достаточным объёмом свободного пространства и с резервным копированием. Затем откройте окно запуска 1С, нажмите «Добавить», выберите «Добавление в список существующей информационной базы» и укажите путь к скопированному каталогу. После этого база появится в списке и будет готова к работе.
Не размещайте восстановленную базу в том же каталоге, откуда бралась копия, если старое расположение повреждено или находится на ненадёжном диске. Если база будет использоваться по сети, настройте общий доступ к новому каталогу и права для пользователей.
Восстановление клиент-серверной базы
В клиент-серверном варианте данные хранятся в СУБД, поэтому восстановление выполняется на уровне сервера баз данных, а платформа 1С лишь подключается к готовой базе. Это самый надёжный способ для крупных внедрений, но он требует доступа к серверу и понимания работы СУБД.
Общий порядок такой: восстановите дамп в новую базу данных средствами СУБД (например, через SQL Server Management Studio для MS SQL или pg_restore для PostgreSQL), затем в консоли кластера 1С создайте новую информационную базу, указав сервер СУБД, имя восстановленной базы и учётные данные. Параметры должны совпадать с теми, под которыми база работала раньше.
pg_restore -U postgres -d accounting_new -v /backup/accounting.dumpАльтернативный путь — восстановить клиент-серверную базу через файл .dt, если выгрузка делалась регулярно. Это проще, но при больших объёмах загрузка .dt занимает много времени, а выгрузка обычно создаётся реже, чем дампы СУБД. Поэтому в серверных внедрениях основным инструментом должны быть именно штатные средства резервного копирования СУБД.
После восстановления проверьте версию платформы на сервере 1С: она должна быть не ниже той, под которой работала база. Также убедитесь, что в свойствах информационной базы не включена блокировка регламентных заданий, если база должна работать в штатном режиме.
Проверка результата после восстановления
Факт успешной загрузки ещё не означает, что база готова к работе. Обязательно выполните контрольные проверки, прежде чем допускать пользователей.
Как проверить результат
База открывается без ошибок, справочники и документы доступны
Ошибки открытия форм, сообщения о повреждении данных
Последние документы соответствуют дате создания архива
Данные старше ожидаемых — возможно, взят не тот файл копии
Версия конфигурации совпадает с рабочей, обновления не требуются
Платформа требует обновления базы или конфигурация старее рабочей
Пользователи входят под своими учётными записями
Список пользователей пуст или права сброшены
Проведение документов и расчёты выполняются без ошибок
Ошибки при проведении, ссылки на несуществующие объекты
Если база после восстановления открывается с ошибками или часть данных недоступна, запустите тестирование и исправление информационной базы (в конфигураторе: «Администрирование» → «Тестирование и исправление») в режиме проверки без исправления — так вы сначала увидите список проблем, не меняя данные.
Типичные ошибки и как их избежать
Отдельная ошибка — путать выгрузку .dt с архивом конфигурации (.cf). Файл .cf содержит только конфигурацию без данных, и загрузка его вместо .dt ничего не восстановит. Перед началом работы убедитесь, что расширение файла именно .dt.
Удобно восстанавливать базу всегда в новый каталог или новую базу СУБД с понятным именем, например с датой архива. Старую базу при этом не удаляйте минимум несколько дней: если в восстановленной копии обнаружится нехватка свежих документов, их можно будет перенести обработкой или вручную.
Что делать, если архивная копия не подходит или повреждена
Бывает, что единственная копия устарела, не открывается или оказалась создана неподходящим способом. В этом случае действуйте по ситуации, а не пытайтесь загрузить заведомо проблемный файл поверх рабочей базы.
Как выбрать действие
Утилита chdbfl.exe поставляется вместе с платформой и предназначена для проверки физической целостности файловых баз. Работайте с ней только на копии файла: исправление необратимо изменяет данные, и при неудаче откатиться будет невозможно.
Что важно запомнить
Способ восстановления определяется типом копии: .dt загружается через конфигуратор, файловая база — копированием каталога, клиент-серверная — средствами СУБД. Перед восстановлением сохраните текущее состояние базы, после — проверьте актуальность данных, права пользователей и работоспособность документов. Восстанавливайте в новое расположение, а старую базу не удаляйте сразу.
Частые вопросы
Можно ли восстановить из архива только часть данных, например один документ?
Напрямую из файла .dt или дампа СУБД отдельные объекты не извлекаются. Практический путь: восстановите копию в отдельную тестовую базу, найдите нужные документы и перенесите их в рабочую базу с помощью обработки выгрузки-загрузки данных или введите вручную.
Чем выгрузка .dt отличается от копирования файла базы?
Файл .dt создаётся штатными средствами платформы и гарантированно согласован, его можно загружать даже при работающей базе-источнике. Копирование файла 1Cv8.1CD быстрее, но корректно только при полностью остановленной базе, иначе копия может оказаться повреждённой.
После загрузки .dt пропали пользователи. Это нормально?
Да, если выгрузка делалась без списка пользователей или в другой версии — список хранится внутри базы, и загрузка заменяет его тем, что был в архиве. Добавьте пользователей заново через конфигуратор или консоль кластера и назначьте права.
База после восстановления требует обновления конфигурации. Что делать?
Это означает, что архив создавался на более старой версии конфигурации, а платформа или шаблон обновились. Запустите конфигуратор, согласитесь на обновление конфигурации базы данных и дождитесь завершения реструктуризации. Перед этим сохраните копию восстановленной базы.
Как часто нужно делать архивные копии, чтобы восстановление было безболезненным?
Ориентируйтесь на допустимый объём потери данных: для активно используемой базы разумный минимум — ежедневные копии, для клиент-серверных баз — полная копия ежедневно плюс резервные копии журналов транзакций СУБД в течение дня. Храните копии на отдельном носителе или в другом расположении и периодически проверяйте их тестовым восстановлением.
Можно ли восстановить базу, если архив находится в облачном хранилище?
Да, порядок тот же: скачайте файл копии на локальный диск целиком, проверьте его размер и целостность, затем выполните стандартное восстановление. Не загружайте .dt напрямую из облачного клиента во время синхронизации — прерванная передача может повредить файл.