Если 1С сообщает «Файл базы данных поврежден», закройте все подключения и скопируйте каталог с 1Cv8.1CD. Затем найдите штатную chdbfl.exe в каталоге платформы и проверьте копию без галочки «Исправлять обнаруженные ошибки».
Утилита работает только с файловыми базами. Для базы на PostgreSQL, Microsoft SQL Server или другой СУБД этот порядок не подходит. Там резервную копию снимают средствами СУБД.
Закройте базу у всех пользователей и скопируйте весь каталог с 1Cv8.1CD в другое место. Не проверяйте и не исправляйте рабочий файл.
Выгрузка .dt не заменяет файловую копию. В материале МИГСОФТ о повреждении базы указано: дефекты могут перейти в выгрузку вместе с данными. Пока новая база не прошла проверку, сохраняйте исходный 1Cv8.1CD без изменений.
Для каких баз подходит chdbfl.exe
chdbfl.exe проверяет физическую целостность файла 1Cv8.1CD. Утилита входит в платформу 1С и может работать, даже когда база не открывается ни в Предприятии, ни в Конфигураторе. Такой сценарий описывает МИГСОФТ в руководстве по ошибке повреждённого файла.
Сначала определите, где лежат данные. Выделите базу в окне запуска 1С и посмотрите путь в нижней части окна. Если в этом каталоге есть 1Cv8.1CD, перед вами файловая база.
У клиент-серверной базы путь к файлу не появится. Данные хранит PostgreSQL, Microsoft SQL Server или другая СУБД. Руководства БухЭксперт8, МИГСОФТ и Кодерлайн сходятся в одном: запускать chdbfl.exe непосредственно для такой базы нельзя.
Не пытайтесь искать файл .1CD внутри каталогов PostgreSQL или SQL Server. Формат хранения там другой, а восстановление проводят средствами выбранной СУБД.
Если вы ещё не определили вид повреждения, начните с порядка действий при сообщении «Файл базы данных повреждён». Для ошибки формата потока действует другая развилка: причина может находиться в кэше, файле .dt или несовпадающих версиях платформы.
Где находится chdbfl.exe
Скачивать chdbfl.exe отдельно не нужно. Утилита лежит в папке bin установленной платформы 1С. Clever Business приводит такой путь для 32-разрядной установки:
C:\Program Files (x86)\1cv8\<версия>\bin\chdbfl.exe
Для 64-разрядной платформы проверьте второй каталог:
C:\Program Files\1cv8\<версия>\bin\chdbfl.exe
Вместо <версия> будет номер установленного релиза, например 8.3.24.1548. На компьютере могут лежать несколько каталогов с разными релизами. Возьмите утилиту из той версии платформы, которой открывали базу перед сбоем.
Версию платформы можно посмотреть в окне запуска 1С или в свойствах ярлыка. Если приложение не запускается, откройте каталоги внутри 1cv8 и сравните их с путём исполняемого файла в ярлыке.
Не загружайте найденную в поиске копию chdbfl.exe. БухЭксперт8 предупреждает о риске заражения при скачивании исполняемого файла со стороннего сайта. Кроме того, чужой файл может не совпасть с версией вашей платформы.
Что проверить до запуска
Утилите нужен монопольный доступ. Кодерлайн указывает, что перед проверкой надо завершить работу пользователей и закрыть клиентские подключения. Одного закрытого окна на компьютере администратора недостаточно.
| Что проверить | Признак | Что сделать |
|---|---|---|
| Вид базы | В каталоге базы лежит 1Cv8.1CD | Продолжать только с файловой базой |
| Исходный файл | Каталог с базой скопирован в другое место | Все проверки проводить на копии |
| Версия утилиты | chdbfl.exe взята из bin нужного релиза платформы | Не использовать файл из другой установки |
| Доступ пользователей | Все окна 1С закрыты, сетевые подключения к каталогу завершены | Не запускать проверку до освобождения файла |
| Свободное место | На другом диске или разделе помещается каталог базы | Хранить исходник и проверяемую копию отдельно |
Если нет отдельной копии или монопольного доступа, chdbfl.exe пока не запускайте.
Для сетевой файловой базы скопируйте весь каталог на локальный диск. Это сохранит связанные файлы каталога и исключит повторный обрыв сети во время проверки. Сам файл 1Cv8.1CD не переименовывайте.
Как запустить chdbfl без исправления
Откройте chdbfl.exe из каталога bin. В поле «Имя файла БД» выберите 1Cv8.1CD внутри скопированного каталога.
Оставьте галочку «Исправлять обнаруженные ошибки» снятой. Нажмите «Выполнить». Clever Business указывает, что сообщения проверки появляются в текстовом окне под полем выбора файла.
Первый прогон нужен для диагностики. Без галочки утилита ищет повреждения, но не меняет базу. С установленной галочкой она правит найденные дефекты и может удалить некорректные записи — это ограничение отдельно отмечает Кодерлайн.
Не запускайте исправление сразу после первого сообщения об ошибке. Сохраните результат проверки: сделайте снимок окна либо перепишите сообщения и время запуска в рабочий журнал. По нему можно сравнить повторную проверку и объяснить специалисту, что уже происходило с файлом.
Подробную расшифровку сообщений здесь приводить нельзя. В доступных материалах нет документа фирмы «1С», который задаёт эти обозначения для нужной версии платформы. По одному похожему тексту нельзя уверенно решать, какие данные утилита изменит.
| Режим | Меняется ли копия | Когда применять | Что сохранить |
|---|---|---|---|
| Проверка без галочки | Нет | Первый запуск для поиска повреждений | Исходный каталог и текст результата |
| Проверка с исправлением | Да | Только после просмотра результата, на отдельной копии | Нетронутый исходник и копию до исправления |
| Отказ от запуска | Нет | Нет копии, остались подключения или вид базы не определён | Текущее состояние каталога |
| Повторная проверка без галочки | Нет | После исправления, чтобы проверить результат | Исправленную копию и новый текст проверки |
Первый прогон диагностирует файл. Исправление запускают только на копии, к которой можно вернуться.
Что проверяет утилита chdbfl
chdbfl.exe работает с физической структурой файловой базы. БухЭксперт8 и МИГСОФТ описывают её как штатный инструмент проверки целостности 1Cv8.1CD.
Это не универсальное восстановление. Утилита не работает напрямую с сервером СУБД и не обещает вернуть каждую запись. После автоматической починки часть повреждённых данных может исчезнуть.
Логическую и ссылочную целостность проверяет другой инструмент — «Тестирование и исправление» в Конфигураторе. В руководстве МастерСофт эта обработка находится в меню «Администрирование» и отдельно проверяет структуру базы, ссылки и индексы.
Порядок разделяет риски. Сначала chdbfl.exe приводит физическую структуру копии в состояние, при котором её может открыть платформа. Затем Конфигуратор проверяет данные на уровне объектов 1С.
Обе операции меняют базу при включённом исправлении. Перед каждой сохраняйте копию предыдущего состояния. Если второй этап ухудшит результат, у вас останется файл после первого этапа и нетронутый исходник.
Как переходить к исправлению
Переходите к исправлению, только если первый прогон нашёл дефекты и у вас остался исходный каталог. Закройте chdbfl.exe, создайте ещё одну копию диагностированного файла и работайте с ней.
Запустите утилиту той же версии, выберите новую копию и установите галочку «Исправлять обнаруженные ошибки». После завершения не переносите исправленный 1Cv8.1CD поверх рабочей базы.
Проверьте исправленную копию повторным запуском без галочки. Затем добавьте каталог как отдельную информационную базу и попробуйте войти в режиме Предприятия. Clever Business рекомендует проверять результат именно запуском базы.
Одного успешного входа мало. Откройте несколько участков, с которыми работали перед сбоем: документы, справочники, отчёты. Если ошибка появилась при обновлении, сверьте конфигурацию и версию платформы с состоянием до аварии.
После прерванной реструктуризации пригодится отдельный порядок для ошибок обновления 1С. Повторять обновление поверх единственной копии нельзя: сначала надо определить этап сбоя.
Что делать с открывшейся базой
Если исправленная копия открылась, выгрузите данные в .dt через Конфигуратор. Затем создайте новую информационную базу и загрузите выгрузку туда. Не назначайте исправленный файл рабочим до этой проверки.
Файл .dt нужен для переноса данных из уже открывшейся базы. Он не заменяет исходную файловую копию: дефект может попасть внутрь выгрузки, о чём предупреждает руководство МИГСОФТ.
После загрузки откройте новую базу в Конфигураторе и режиме Предприятия. Проверьте пользователей, основные справочники, последние документы и регламентные задания. Набор проверок зависит от конфигурации и момента сбоя.
Если база открывается лишь частично, не удаляйте старые копии. Зафиксируйте, какие разделы доступны, а на каких действиях возникает ошибка. Эти сведения помогут выбрать дальнейший способ извлечения данных.
Когда надо остановиться
Остановите самостоятельные попытки, если исправленная копия не открылась, утилита завершилась с ошибкой или после починки исчезли данные. Не запускайте исправление по кругу: каждый новый прогон меняет уже изменённый файл.
Исходный 1Cv8.1CD не открывайте в режиме исправления. Не заменяйте им повреждённую рабочую базу и не загружайте .dt поверх неё. Разворачивайте каждый результат в новом каталоге или новой информационной базе.
Если ошибка связана не с файлом, а с повреждением структуры конфигурации, используйте порядок для случая, когда нарушена целостность конфигурации 1С. Там выбор действий зависит от доступности Конфигуратора и вида базы.
Другие сценарии отказа собраны на карте неисправностей 1С. По ней можно отделить повреждение базы от сбоя клиента, платформы, кластера и СУБД.
Если не помогло
chdbfl.exe не гарантирует полное восстановление. Когда база не открывается после работы с копией или в ней пропали записи, дальнейшие действия зависят от характера повреждения. Без анализа файла нельзя заранее назвать объём возвращаемых данных.
Сохраните исходный каталог, все промежуточные копии и результаты запусков. После этого передайте материалы на диагностику и аварийное восстановление базы. Не продолжайте исправление исходника до разбора.
Чтобы не повторилось
Настройте резервное копирование базы 1С и проверяйте восстановление на отдельной машине или в отдельном каталоге. Наличие архива ещё не доказывает, что из него открывается база.
Для ближайшего запуска держите такой порядок:
- Убедитесь, что база файловая и в каталоге есть
1Cv8.1CD. - Закройте подключения и скопируйте весь каталог.
- Найдите штатную
chdbfl.exeнужной версии. - Проверьте копию без галочки исправления.
- Исправляйте ещё одну копию, сохранив исходник.
- Откройте результат и выгрузите
.dt. - Загрузите
.dtв новую базу и проверьте данные.
Исходный 1Cv8.1CD храните неизменным до проверки новой базы. chdbfl.exe годится для диагностики и ограниченной починки файловой базы, но не заменяет резервную копию.
Можно ли скачать chdbfl.exe отдельно?
Не нужно. Возьмите утилиту из каталога bin установленной платформы 1С. Сторонний исполняемый файл может содержать вредоносный код или не совпасть с версией платформы.
Подходит ли chdbfl для базы на PostgreSQL?
Нет. Утилита работает с файловой базой 1Cv8.1CD и не подключается к PostgreSQL, Microsoft SQL Server или другой СУБД.
Нужно ли сразу ставить галочку «Исправлять обнаруженные ошибки»?
Нет. Первый запуск проводите без галочки на отдельной копии. После просмотра результата можно создать ещё одну копию и запустить исправление на ней.
Можно ли считать файл dt резервной копией?
Нет. Повреждения могут перейти в выгрузку вместе с данными. Сохраняйте исходный каталог с 1Cv8.1CD отдельно.
Что делать, если после chdbfl база не открывается?
Прекратите менять исходный файл. Сохраните копии и результаты проверки, затем переходите к диагностике повреждения или аварийному восстановлению.
Можно ли заменить рабочий 1Cv8.1CD исправленным файлом?
Не заменяйте его до проверки. Откройте исправленную копию отдельно, выгрузите dt и загрузите его в новую информационную базу.