Администрирование · 10 мин
Как восстановить базу данных 1С: файловый и клиент-серверный варианты
Как восстановить базу данных 1С из копии dt, бэкапа SQL или повреждённого файла 1Cv8. Пошаговые инструкции, проверка результата и типичные ошибки.
Восстановление базы данных 1С требуется после сбоя оборудования, случайного удаления файлов, неудачного обновления конфигурации или повреждения информационной базы. Порядок действий зависит от режима работы: файловая база хранится в одном файле 1Cv8.1CD, а клиент-серверная — в СУБД (MS SQL Server, PostgreSQL, Oracle), и методы восстановления у них различаются принципиально.
Главный принцип при любом сценарии: до начала работ сохраните всё, что осталось от базы, — файл 1Cv8.1CD, выгрузку dt, бэкап СУБД. Даже повреждённый файл может пригодиться, если штатные способы не сработают. Никогда не запускайте восстановление «поверх» единственной копии данных.
Ниже разобраны основные сценарии: восстановление из выгрузки dt, из бэкапа SQL, ремонт повреждённой файловой базы утилитой chdbfl и тестированием и исправлением, а также проверка результата и частые ошибки.
Определите тип базы и характер повреждения
Прежде чем восстанавливать, выясните, в каком режиме работала база. Откройте список информационных баз в окне запуска 1С и посмотрите строку подключения: если указан путь к папке — база файловая, если имя сервера и кластера — клиент-серверная. От этого зависит весь дальнейший план.
Далее оцените ситуацию: база не открывается с ошибкой формата потока, пропала после сбоя диска, её удалили, либо она открывается, но часть данных недоступна или выдаёт ошибки СУБД. Каждый случай имеет свой оптимальный сценарий.
Пробуйте chdbfl, затем тестирование и исправление
Тестирование и исправление с реструктуризацией
Ищите бэкап, теневые копии Windows, архивы dt
Проверяйте состояние базы в SSMS, логи СУБД
Восстановление из выгрузки dt
Файл с расширением dt — это штатная выгрузка информационной базы, созданная через конфигуратор (меню «Администрирование» → «Выгрузить информационную базу»). Если у вас есть свежая выгрузка, это самый простой и предсказуемый способ восстановления.
Создайте новую пустую информационную базу: в окне запуска нажмите «Добавить» → «Создание новой информационной базы» → вариант «без конфигурации». Затем войдите в конфигуратор новой базы, выберите «Администрирование» → «Загрузить информационную базу» и укажите файл dt. Процесс для больших баз занимает от десятков минут до нескольких часов.
Учтите ограничения: выгрузка dt не переносит настройки хранилища конфигурации, а для очень больших баз (десятки гигабайт) загрузка может завершаться ошибкой из-за ограничений формата. В клиент-серверном варианте для крупных баз предпочтительнее бэкап средствами СУБД.
- 1Создайте новую пустую базу без конфигурации
- 2Откройте её в конфигураторе
- 3Администрирование → Загрузить информационную базу → выберите файл dt
- 4Дождитесь окончания загрузки и выполните первичный запуск в режиме предприятия
- 5Проверьте ключевые отчёты и документы за последние даты
Восстановление клиент-серверной базы из бэкапа СУБД
Для баз на MS SQL Server восстановление выполняется через SQL Server Management Studio. Подключитесь к серверу, в обозревателе объектов вызовите контекстное меню узла «Базы данных» → «Восстановить базу данных», укажите устройство с файлом .bak и целевое имя базы. Если восстанавливаете поверх существующей, на вкладке «Параметры» включите перезапись и снимите активные соединения.
После восстановления на стороне СУБД проверьте сопоставление пользователя базы данных с логином сервера — при переносе на другой сервер связь часто теряется, и 1С не может подключиться. Обычно проблему решает перепривязка пользователя или создание логина с тем же именем.
Для PostgreSQL используются утилиты pg_dump/pg_restore или команда createdb с последующим восстановлением дампа. Важно, чтобы версия сервера PostgreSQL и используемая сборка (для 1С требуются специальные сборки) совпадали с исходной средой, иначе возможны ошибки при загрузке дампа.
Ремонт повреждённой файловой базы
Утилита chdbfl.exe
Если копии нет, а файл 1Cv8.1CD повреждён, первым инструментом идёт утилита chdbfl.exe из каталога bin установленной платформы (папка конкретной версии). Запустите её, укажите путь к файлу базы, установите флажок «Исправлять обнаруженные ошибки» и нажмите «Исполнить». Утилита проверяет физическую целостность таблиц и удаляет нечитаемые фрагменты.
Работайте только с копией файла: chdbfl изменяет данные необратимо, а «исправление» нередко означает удаление повреждённых записей. На больших файлах проверка занимает значительное время — не прерывайте процесс.
Тестирование и исправление
После chdbfl (или сразу, если база ещё открывается в конфигураторе) запустите «Администрирование» → «Тестирование и исправление». Отметьте проверки логической и ссылочной целостности, выберите вариант «Тестирование и исправление». Пункт «Реиндексация» и «Реструктуризация таблиц» включайте осознанно: реструктуризация на повреждённой базе может занять часы и при обрыве усугубить состояние.
Если конфигуратор не открывается вообще, попробуйте очистить кэш метаданных: удалите папку базы из каталога кэша пользователя (в профиле пользователя, в подкаталогах 1С с именами вида 1cv8) и повторите вход. Повреждённый кэш часто маскируется под повреждение самой базы.
C:\Program Files\1cv8\<версия платформы>\bin\chdbfl.exeПроверка результата восстановления
После любого сценария восстановления базу нельзя сразу отдавать в работу. Войдите в режим предприятия, сформируйте оборотно-сальдовую ведомость за последний закрытый период и сверьте итоги с печатными формами или старыми отчётами, если они сохранились. Проверьте открытие документов за последние дни, справочники контрагентов и номенклатуры.
Дополнительно полезно выполнить полное тестирование и исправление уже без исправлений — в режиме «Только тестирование», чтобы убедиться в отсутствии ошибок логической целостности. Ошибки ссылочной целостности (битые ссылки) говорят о том, что часть объектов была потеряна при повреждении.
Как проверить результат
Открывается без ошибок, пользователи входят
Ошибки формата потока, зависание на старте
Итоги совпадают с ранее сохранёнными отчётами
Расхождения оборотов или сальдо
Открываются и проводятся
Ошибки при открытии, пустые поля, битые ссылки
Ошибок не обнаружено
Сообщения о нарушении целостности
Частые ошибки и маршрут выбора действий
Самая разрушительная ошибка — запуск «исправляющих» инструментов по единственной копии данных. Вторая типичная ошибка — восстановление устаревшей копии, хотя повреждённая база чинилась, в результате чего теряются дни или недели введённых документов. Третья — работа пользователей в базе во время восстановления или реструктуризации, что приводит к новым повреждениям.
Также часто забывают, что после восстановления базы из бэкапа на новом сервере нужно заново привязать базу в консоли кластера 1С или исправить строку подключения в списке баз пользователей.
Как выбрать действие
Профилактика: как не попасть в ситуацию восстановления
Настройте регулярное резервное копирование до того, как оно понадобится. Для файловых баз достаточно ежедневной выгрузки dt по расписанию или копирования файла 1Cv8.1CD в момент, когда в базе никто не работает. Для клиент-серверных — план обслуживания в СУБД с полными и разностными бэкапами.
Храните копии на отдельном носителе или в сетевом хранилище, а не на том же диске, где лежит база. Периодически проверяйте восстановление хотя бы одной копии на тестовой базе: непроверенный бэкап может оказаться битым в самый неподходящий момент.
Что важно запомнить
Сначала сохраните текущее состояние данных, затем выбирайте сценарий: загрузка dt, восстановление бэкапа СУБД или ремонт через chdbfl и тестирование и исправление. После восстановления обязательно проверьте отчёты и целостность, а на будущее настройте регулярное копирование.
Частые вопросы
Можно ли восстановить базу 1С без бэкапа?
Да, если сам файл базы сохранился. Файловую базу пробуют починить утилитой chdbfl.exe и режимом «Тестирование и исправление». Если файл удалён, проверьте теневые копии Windows (свойства папки → «Предыдущие версии») и корзину. Полное отсутствие файла и копий обычно означает потерю данных.
Чем отличается выгрузка dt от копирования файла 1Cv8.1CD?
Выгрузка dt — логическая копия через механизм платформы, она переносится между файловым и клиент-серверным режимами. Копирование файла — физическая копия, быстрее, но требует, чтобы в базе никто не работал, и применима только к файловому варианту.
База открывается с ошибкой «Неверный формат хранилища данных». Что делать?
Сначала удалите кэш метаданных базы в профиле пользователя — часто ошибка исчезает. Если не помогло, скопируйте файл 1Cv8.1CD и прогоните копию через chdbfl.exe, затем выполните тестирование и исправление в конфигураторе.
Сколько времени занимает восстановление?
Загрузка dt небольшой базы — от нескольких минут, базы в десятки гигабайт — несколько часов. Восстановление бэкапа SQL обычно быстрее загрузки dt сопоставимого объёма. Проверка chdbfl на большом файле также может идти часами — не прерывайте процесс.
После восстановления часть документов пропала. Это исправимо?
Если chdbfl или тестирование и исправление удалили повреждённые записи, вернуть их можно только из более ранней копии. Поэтому перед ремонтом всегда сохраняйте исходный файл: иногда удаётся выгрузить данные из него другими средствами или перенести документы вручную.
Нужно ли восстанавливать базу на той же версии платформы?
Желательно использовать версию платформы не ниже той, на которой работала база. Загрузка dt на более новую платформу обычно проходит штатно, обратная ситуация может вызвать ошибки несовместимости.