Для восстановления удаленной базы данных сначала необходимо восстановить удаленный MD файл (файл конфигурации). Для этого выполняем анализ файловой системы. При отсутствии элементов файловой системы, описывающих расположение MD файла, нужно выполнить анализ регулярных выражений, характерных для данного типа файлов, для нахождения позиции начала файла на диске.
После успешного восстановления файла конфигурации 1С предприятие нужно создать новую базу, затем из вновь созданных dbf файлов извлекаются все служебные заголовки, требуемые для поиска dbf файлов. При создании масок поиска необходимо учесть, что в служебных заголовках поля даты, количества записей нам заведомо неизвестны.
Сформировав маски для поиска заголовков dbf файлов, выполняем поиск позиций на диске, где расположены заголовки. Далее определяем актуальные версии по полю даты и количества записей.
На основании найденных заголовков производим расчет размера файлов, сложив длину заголовка с суммарным размером всех записей и добавив длину конечного маркера. Следующий этап создания пустых файлов расчетного размера и согласно информации в полях форм – формирование динамических масок для поиска фрагментов dbf файлов. Диапазоны значений маски задаются согласно типов полей, описанных в заголовках dbf файлов. После поисков данных, отвечающих требованиям масок в ручном режиме (при наличии неоднозначностей) формируем утерянный dbf файл. Таким образом выполняем восстановление всех dbf файлов, принадлежащих искомой базе, после чего запускаем приложение в монопольном режиме и после индексации получаем работоспособную базу данных.
Павел Янчарский
Перепечатка материалов разрешена только с указанием активной ссылки на оригинал статьи