К статье
Практический материал

Администрирование · 12 мин

Как открыть поврежденную базу 1С

Что делать, если база 1С не открывается: диагностика повреждения, тестирование и исправление, восстановление из резервной копии и работа с утилитой chdbfl.exe.

Сообщение «Файл базы данных поврежден» или внезапное зависание 1С при запуске — типичная ситуация после отключения электричества, сбоя жесткого диска или некорректного завершения работы. В большинстве случаев базу удается открыть и восстановить штатными средствами: утилитой тестирования и исправления, инструментом chdbfl.exe для файловых баз или загрузкой из резервной копии.

Первое правило при любом подозрении на повреждение — не запускать базу повторно и не пытаться «починить» её на живом файле. Каждая попытка записи в поврежденный файл увеличивает риск окончательной потери данных. Прежде чем что-либо делать, снимите копию каталога базы целиком.

Дальнейшие действия зависят от формата базы: файловая (один файл 1Cv8.1CD в каталоге) или клиент-серверная (SQL Server, PostgreSQL). Инструменты и порядок восстановления у них различаются, поэтому сначала определите, с чем вы работаете.

Как понять, что база повреждена, и оценить масштаб проблемы

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

Типичные симптомы: сообщение «Файл базы данных поврежден» с указанием пути к 1Cv8.1CD, ошибка «Нарушена целостность структуры таблицы», зависание на этапе загрузки конфигурации, внезапные вылеты платформы без сообщения, пропавшие документы или записи в журналах.

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

База не открывается вообщеВероятно повреждение файла данных или служебных таблиц

Проверьте, открывается ли база в конфигураторе

Ошибка в конкретном объектеПовреждена отдельная таблица или записи

Проверьте, воспроизводится ли ошибка у других пользователей

Ошибка после сбоя питанияТипичный сценарий обрыва транзакции

Проверьте диск на ошибки и наличие свежей резервной копии

База на сетевом дискеВозможен обрыв связи во время записи

Проверьте стабильность сети, не копируйте базу по сети во время работы пользователей

Подготовка: резервная копия перед любыми действиями

Даже если база не открывается, файл можно скопировать средствами операционной системы. Для файловой базы скопируйте весь каталог целиком — в нем, помимо 1Cv8.1CD, могут быть служебные файлы, важные для восстановления. Копию разместите на другом диске или другом компьютере.

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

Для клиент-серверной базы сделайте резервную копию средствами СУБД (например, pg_dump для PostgreSQL или backup в SQL Server), а не копированием файлов данных — файлы работающей СУБД копировать нельзя.

Проверка файловой базы утилитой chdbfl.exe

Утилита chdbfl.exe входит в состав платформы 1С и находится в каталоге bin установленной версии (например, C:\Program Files\1cv8\<номер версии>\bin\). Она проверяет физическую целостность файла 1Cv8.1CD на низком уровне и работает даже тогда, когда конфигуратор базу не открывает.

Запустите утилиту, укажите путь к файлу 1Cv8.1CD из скопированного каталога (не из рабочего), отметьте флажок «Исправлять обнаруженные ошибки» и нажмите «Выполнить». Процесс на большой базе может занять от нескольких минут до нескольких часов.

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

Порядок действий с chdbfl.exe
  1. 1
    Завершите все сеансы 1С и скопируйте каталог базы на другой диск
  2. 2
    Найдите chdbfl.exe в каталоге bin установленной платформы
  3. 3
    Укажите путь к файлу 1Cv8.1CD в копии базы
  4. 4
    Отметьте «Исправлять обнаруженные ошибки» и запустите проверку
  5. 5
    Дождитесь окончания и изучите отчет об ошибках
  6. 6
    Откройте базу в конфигураторе и проверьте работоспособность

Тестирование и исправление в конфигураторе

Если база открывается в конфигураторе, запустите штатную проверку: меню «Администрирование» → «Тестирование и исправление». Этот инструмент проверяет логическую целостность данных и структуру таблиц.

Для первого прохода отметьте «Реиндексация таблиц информационной базы» и «Проверка логической целостности информационной базы». Внизу выберите режим «Тестирование и исправление» (а не только «Тестирование»), если готовы, чтобы программа сама устраняла найденные проблемы. Пункт «Проверка ссылочной целостности» стоит включать с осторожностью: при наличии битых ссылок объекты с ними могут быть очищены или удалены.

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

Что делать, если конфигуратор не открывает базу

Выгрузка того, что читается

Иногда база открывается в режиме «Предприятие», но не в конфигураторе, или наоборот. Если удалось войти в любой из режимов, немедленно выгрузите данные: в конфигураторе — «Администрирование» → «Выгрузить информационную базу» в файл .dt. Выгрузка .dt часто срабатывает даже на поврежденной базе, потому что читает данные последовательно и пропускает отдельные сбойные участки.

Полученный файл .dt загрузите в новую пустую базу («Загрузить информационную базу»). Такой прием нередко «лечит» базу: при загрузке структура таблиц пересоздается заново, и физические повреждения исчезают вместе со старым файлом.

Перенос данных в чистую базу

Если .dt выгрузить не удается, создайте пустую базу той же конфигурации и перенесите данные обработкой «Выгрузка и загрузка данных XML» (есть на диске ИТС и в составе многих конфигураций). Способ трудоемкий, но позволяет спасти данные, когда база-источник открывается только частично.

Клиент-серверная база

Для базы на SQL Server или PostgreSQL файл-инструменты не применяются. Проверяйте целостность средствами СУБД: DBCC CHECKDB для SQL Server, анализ журналов и целостности кластера для PostgreSQL. Также попробуйте выгрузку .dt через конфигуратор — она работает одинаково для обоих форматов.

Маршрут решения

Как выбрать действие

База файловая и не открывается никакПрогоните копию через chdbfl.exe с исправлением ошибок
База открывается в конфигуратореСделайте выгрузку .dt, затем тестирование и исправление
chdbfl и тестирование не помогли, но есть .dt или бэкапРазверните копию в новом каталоге и перенесите недостающие данные
База клиент-сервернаяПроверяйте целостность средствами СУБД и выгружайте .dt через конфигуратор
Диск поврежден физическиПрекратите операции и обратитесь к специалистам по восстановлению данных

Восстановление из резервной копии

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

Файловая база восстанавливается простым копированием каталога из архива на прежнее место. База из .dt загружается через конфигуратор в пустую базу. Клиент-серверная — через восстановление backup средствами СУБД.

После восстановления проверьте актуальность: сверьте остатки по ключевым регистрам, наличие последних документов и нумерацию. Попросите пользователей подтвердить, какие операции они вводили после даты копии.

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

chdbfl.exe

Быстрый первый шаг для файловых баз; не помогает при логических повреждениях и не применим к клиент-серверным базам

Тестирование и исправление

Устраняет логические ошибки; требует монопольного доступа и может удалить объекты с битыми ссылками

Выгрузка/загрузка .dt

Пересоздает структуру базы заново; требует, чтобы база хотя бы открывалась в конфигураторе

Резервная копия

Самый надежный вариант; теряются данные, введенные после момента копирования

Проверка результата и профилактика

После любого способа восстановления базу нельзя сразу отдавать в работу. Откройте её в режиме «Предприятие», проведите несколько документов, сформируйте основные отчеты (оборотно-сальдовую ведомость, остатки склада), проверьте журналы документов за последний период. Запустите тестирование и исправление еще раз — на этот раз оно должно завершиться без ошибок.

Чтобы ситуация не повторилась, настройте регулярное резервное копирование: хотя бы ежедневную выгрузку .dt или копирование каталога по расписанию, а для клиент-серверных баз — регламентный backup средствами СУБД. Проверяйте копии на восстановление: копия, которая ни разу не разворачивалась, не считается надежной.

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

Контрольные точки

Как проверить результат восстановления

Запуск базы
Норма

Открывается в конфигураторе и в режиме «Предприятие» без сообщений об ошибках

Тревожный признак

Ошибка при открытии или зависание на загрузке

Тестирование и исправление
Норма

Завершается без обнаруженных ошибок

Тревожный признак

Повторно находит и исправляет те же ошибки

Данные за последний период
Норма

Документы и записи на месте, проводятся без ошибок

Тревожный признак

Пропавшие документы, битые ссылки, ошибки проведения

Отчеты
Норма

ОСВ и остатки сходятся с ожидаемыми значениями

Тревожный признак

Расхождения в итогах, пустые отчеты

Типичные ошибки при восстановлении
01
Запуск исправления на единственном экземпляре базы без копии — при неудаче откатиться уже не к чему
02
Копирование файла базы, пока пользователи работают, — копия получается битой и бесполезной
03
Включение проверки ссылочной целостности без понимания последствий — объекты с битыми ссылками могут быть удалены
04
Прерывание chdbfl или тестирования на середине — файл остается в промежуточном состоянии
05
Размещение восстановленной базы на тот же сбойный диск без его проверки
Итог

Что важно запомнить

Поврежденная база 1С чаще всего восстанавливается штатными средствами: копия каталога → chdbfl.exe → выгрузка .dt → тестирование и исправление → при неудаче откат на резервную копию. Главные условия успеха — работать только с копией и не запускать исправление на единственном экземпляре данных.

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

Можно ли открыть поврежденную базу без конфигуратора?

Да, утилита chdbfl.exe работает автономно и не требует запуска конфигуратора — ей нужен только путь к файлу 1Cv8.1CD. Если после её работы база все равно не открывается, без конфигуратора дальнейшие шаги (выгрузка .dt, тестирование) выполнить не получится.

База открывается, но отчеты показывают неверные данные. Это повреждение?

Возможно. Сначала пересчитайте итоги (в режиме «Предприятие»: «Операции» → «Управление итогами») и проведите проблемные документы заново. Если ошибки остаются, запустите тестирование и исправление с проверкой логической целостности — расхождения в итогах часто вызваны поврежденными регистрами.

Сколько времени занимает проверка chdbfl.exe?

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

Поможет ли переустановка платформы 1С?

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

Что делать, если резервных копий нет вообще?

Действуйте по цепочке: копия каталога → chdbfl.exe → попытка открыть в конфигураторе → выгрузка .dt или выгрузка данных в XML в чистую базу. Даже частично читаемая база обычно позволяет спасти большую часть справочников и документов. После восстановления сразу настройте регулярное копирование.

Опасно ли запускать «Тестирование и исправление»?

Сама процедура безопасна при соблюдении двух условий: наличие свежей копии базы и монопольный доступ. Риск представляет режим исправления при проверке ссылочной целостности — программа может удалить объекты, ссылающиеся на несуществующие записи. Поэтому сначала запускайте режим «Только тестирование» и изучайте список ошибок.