Восстановление работоспособности файловой базы. 0. Введение

26.02.13

Задачи пользователя - Корректировка данных

Восстановление работоспособности разрушенной файловой базы. Этап 0. Введение в проблематику.

Этап 0. Введение в проблематику.

С упрямой периодичностью на форумах по 1С появляются крики души "Помогите! Упала файловая база, бэкапов нет, что делать?". Лично я всегда при этом вспоминаю известную шутку "Админы делятся на два типа — тех, кто делает бэкапы, и тех, кто будет их делать". Но, отбросив шутки в сторону, постараемся серьёзно рассмотреть данную проблему, ведь ситуации бывают разные. Например, бэкапы делались на диск, на котором закончилось место, или бэкапы делались через выгрузку, и все такие выгрузки за последнее время оказались неработоспособны. К слову сказать, даже админы, считающие себя "бывалыми", прокалываются на подобных мелочах.

В качестве разминки, позвольте изложить несколько советов по правильной организации бэкапов файловых баз данных, несоблюдение которых может сыграть злую шутку:

  1. Помимо настроенных автоматических ежедневных бэкапов, обязательно сделайте дополнительный бэкап перед такими критическими операциями, как обновление конфигурации, ТиИ, проверка базу с помощью chdbfl.exe и т.п.
  2. Делайте бэкап архивированием (копированием) файла 1Cv8.1CD, либо комбинируйте копирование с выгрузкой в .dt. Ни в коем случае не ограничивайте бэкап только выгрузкой в .dt, ведь наличие некоторых ошибок в файле 1Cv8.1CD может привести к тому, что в выгрузке будет отсутствовать часть информации, либо выгрузку вообще невозможно будет загрузить. И если с 1Cv8.1CD можно "поколдовать" и попытаться выудить нужные данные, то в случае полностью отсутствующих данных уже ничего не сделаешь.
  3. Процедуру создания бэкапа выполняйте в такой период, когда с базой не работают пользователи.
  4. Периодически проверяйте наличие свободного места на устройстве, куда настроено автоматическое создание бэкапов.
  5. Старайтесь размещать бэкапы не на том же компьютере, где расположена сама база, а на других компьютерах/хранилищах в локальной сети (например, если на компьютере испортится жёсткий диск, или проникнет вирус-шифровальщик, получим порушенные и базу, и бэкапы). Старайтесь также периодически размещать бэкапы на дополнительных (альтернативных) источниках, например, в облачном хранилище (dropbox, yandex disk и т.п.), или на флэшке.


Но что же делать, если самое страшное уже произошло, и база разрушилась, а рабочих бэкапов нет, или они очень старые?
Сразу оговорюсь, что не очень сложные случаи (например, когда база в режиме Предприятия работает нормально, а войти невозможно только в Конфигуратор, или наоборот, или проблема возникает только под определёнными пользователями) рассматривать не буду, т.к. в Интернете есть масса советов по решению подобных проблем - от очистки кэша и "перезаливки" конфигурации, до обновления версии платформы и выгрузки всех данных в чистую базу. Буду рассматривать самые сложные случаи, когда в базу невозможно зайти ни в режиме Предприятия, ни в режиме Конфигуратора ни под одним из пользователей. Симптомы при этом могут быть разные: 1С "зависает" при попытке войти в базу, либо выдаёт сообщения типа "Ошибка формата потока", "База данных полностью разрушена", "Файл базы данных поврежден", "При обновлении данных, после последней реструктуризации, произошла критическая ошибка", "Обнаружена незавершенная операция сохранения конфигурации", либо "падает" с сообщением об ошибке приложения от операционной системы.

Пример окошка с критической ошибкой


Первоначальные действия для диагностирования таких случаев должны быть такими:

  1. Обязательно делаем самый первоначальный бэкап нашей проблемной базы (до любых манипуляций с ней) копированием/архивированием файла 1Cv8.1CD, и убираем его в надёжное место, дабы случайно не повредить.
  2. Пробуем войти в базу под другими пользователями.
  3. Полностью очищаем кэш 1С (это можно сделать, например, простым удалением базы из списка, и добавлением её в список вновь, либо использовать утилиты типа //infostart.ru/public/90572/ , либо удалить вручную http://help1c.com/faq/view/1267.html ).
  4. Пробуем перенести файл базы на другой компьютер, и войти в базу там.
  5. Прибегаем к помощи утилиты chdbfl.exe из поставки 1С:Предприятие, с установленной галкой "Исправлять обнаруженные ошибки".  Пример отказа chdbfl.exe реанимировать базу
  6. Ещё можно попробовать открыть базу на более свежих релизах 1С, например, если работали на 8.2.15, то можно попробовать на 8.2.17.


Если все попытки ни к чему не привели, и мы можем констатировать факт, что база "мёртвая", то остаётся выбрать правильный вариант дальнейших действий. Вариант первый, банальный - отдать базу на ремонт специалисту - рассматривать не будем, здесь проблема из технической плоскости уходит в переговорно-финансовую. Вариант второй, нудный, длительный, и с сомнительным исходом - переслать базу в 1С, и ждать результата - тоже рассматривать не будем, хотите им воспользоваться - пожалуйста, но сильно надеяться на быстрое и положительное решение я бы не стал. Вариант третий - попробовать починить базу своими силами - как раз и является нашей темой.

Итак, Вы решили починить базу своими руками, и окунуться в самые дебри загадочного содержимого файла 1Cv8.1CD. Какие же полезные статьи и инструменты мы имеем на текущий день?

  1. Перво-наперво советую ознакомиться со статьёй //infostart.ru/public/19734/ , содержащей описание формата файловой базы данных .1CD. Крайне настоятельно рекомендую прочитать, осмыслить, и отложить в памяти. Ведь без ясного представления устройства базы заниматься её ремонтом весьма проблематично.
  2. Ещё есть официальная информация о предназначении некоторых таблиц БД от 1С: http://1c-dn.com/library/data_structure_in_1c_enterprise_8/?SECTION_CODE=data_structure_in_1c_enterprise_8&print=Y (к сожалению, только анголязычная).
  3. Неофициальная информация о таблицах и полях: http://main.1c-ei.ru/Home/help/objectdb/dbschema (русскоязычная и более развёрнутая)
  4. Далее, есть прекрасная утилита Tool_1CD //infostart.ru/public/19633/ , позволяющая визуально просмотреть и извлечь данные из файла .1CD в xml-файлы, а также сохранить конфигурацию БД, основную конфигурацию и конфигурацию поставщика. Если из рухнувшей базы нужно спасти только конфигурацию - то самым лёгким и простым вариантом является именно она. Выгруженные в xml-файлы данные частично можно подгрузить в другую базу при помощи разработки //infostart.ru/public/143704/ , однако поддерживается только определённый перечень объектов.
  5. Система восстановления баз 1С restoration-base-1c8: http://code.google.com/p/restoration-base-1c8/downloads/list . Является конфигурацией для 1С, позволяющей загрузить и редактировать в ручном режиме содержимое файловой базы. Загрузка базы происходит очень долго, следует запастить терпением. Считывает блоки, не опираясь на данные корневого объекта, поэтому, если имеем базу с полностью разрушенным корневым объектом, то может быть весьма полезна. Описание примера применения: //infostart.ru/public/158034/
  6. Компонента 1CDLib для прямого чтения/записи данных из файлов баз данных .1CD //infostart.ru/public/166557/ - единственный имеющийся на текущий день инструмент, позволяющий не только читать данные из файловой базы, но и записывать (если не рассматривать низкоуровневый доступ типа hex-редакторов, естественно). Данная компонента позволяет применять к файловым базам многие имеющиеся на просторах Интернета советы по ремонту клиент-серверных баз (MS SQL, PostgreSQL и т.д.), например: http://www.gilev.ru/1c/81/restore/ , //infostart.ru/public/116123/ . Поскольку является внешней компонентой для 1С, позволяет в 90% случаев ремонтировать базы при помощи написания определённого кода (скрипта) на языке 1С после проведения процедуры обследования, не прибегая к hex-редактору. Пример скрипта по переносу таблиц
  7. Hex-редактор HxD http://mh-nexus.de/en/hxd/ (на случай, если что-то надо посмотреть или подправить непосредственно и в ручном режиме). В принципе, можно использовать любой, но мне понравился этот.


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


Следующие этапы:

1. Обследование

См. также

Корректировка данных Зарплата Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

60000 руб.

06.10.2023    4517    37    18    

45

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    33843    108    152    

75

Корректировка данных Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Незаменимая обработка для сопровождения конфигураций: ERP, УТ, КА. Позволяет вычистить многие ошибки в ключах аналитики, в ключевых справочниках конфигурации.

3600 руб.

10.02.2017    111391    669    174    

708

Корректировка данных Программист Пользователь Платформа 1С v8.3 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Представьте, что есть система QR - кодирования, которая НЕ ТРЕБУЕТ изменения конфигурации, НЕ ТРЕБУЕТ изменения ни одной печатной формы для добавления QR-кода, включая внешние, НЕ ХРАНИТ данные штрихкодов и их связь, от чего база не "пухнет", ИМЕЕТ возможность закодировать в QR-коде произвольные данные параметров для последующей обработки полученных данных, УМЕЕТ прикреплять сканы, УМЕЕТ обработать считанный QR-код как ВЫ захотите. А также ХРАНИТ историю операций в обход базы для каждого пользователя в отдельности и УМЕЕТ работать с 2D - сканерами. А также автоматически распознавать отсканированные печатные формы (картинки или pdf-файлы) и выполнять заданные произвольные алгоритмы, в том числе прикрепление их к документам! Обновление 3.2 от 09.06.2024!

19200 руб.

26.08.2018    52621    16    61    

55

Взаиморасчеты Корректировка данных Бухгалтер Пользователь Платформа 1С v8.3 1C:Бухгалтерия Бухгалтерский учет Управленческий учет Платные (руб)

Вы наконец разобрались с закрытием месяцев и пора начать контролировать сроки оплаты поставщикам и задолженности клиентов, но в базе расчеты не идут из-за развернутого сальдо? Не беда, есть решение!

12000 руб.

02.11.2020    7540    6    0    

8

Закрытие периода Корректировка данных Программист Пользователь Платформа 1С v8.3 Система компоновки данных 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Внешняя обработка, позволяющая произвольным образом заполнять документ "Корректировка регистров" Предназначена для использования в конфигурациях "Управление торговлей 11", "Управление небольшой фирмой", "ERP Управление предприятием", а также в других конфигурациях, в состав которых входит библиотека стандартных подсистем (БСП) версии 2.2+ и указанный выше документ.

2400 руб.

13.07.2015    51372    175    29    

127

Корректировка данных Программист Бухгалтер Пользователь Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет НДС Платные (руб)

Обработка предназначена для ООО для смены системы налогообложения УСН на ОСНО, без ведения раздельного учета, входящего НДС по способам учета. При реализации перехода в операции формируются проводки по выделению НДС, который ранее учитывался в стоимости номенклатуры, регистр «НДС Предъявленный».

6000 руб.

22.01.2025    289    1    0    

3

Корректировка данных Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Налоговый учет Налог на прибыль Платные (руб)

Обработка служит для: выравнивания бухгалтерского и налогового учета на определенную дату по выбранным счетам; закрытия остатков по выбранным счетам; обнуления налогового учета (ПР, ВР также будут обнулены)

2880 руб.

05.05.2024    705    10    0    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. maverick76 11 25.02.13 00:30 Сейчас в теме
2. sanches 257 21.03.13 21:53 Сейчас в теме
Спасибо, за статью, и за полезные ссылки на описание таблиц
Ещё есть официальная информация о предназначении некоторых таблиц БД от 1С: http://1c-dn.com/library/data_structure_in_1c_enterprise_8/?SECTION_CODE=data_structure_in_1c_enterprise_8&print=Y(к сожалению, только анголязычная).

На Русском не осилили )
3. AVK_Alex 4 22.04.13 21:29 Сейчас в теме
Статья по ссылке
http://1c-dn.com/library/data_structure_in_1c_enterprise_8/?SECTION_CODE=data_structure_in_1c_enterprise_8&print=Y
у меня не открылась, но стоило убрать print в конце - как все заработало (http://1c-dn.com/library/data_structure_in_1c_enterprise_8/?SECTION_CODE=data_structure_in_1c_enterprise_8)

P.S. Спасибо за статью - как минимум - познавательно, как максимум - не раз спасет вагон здоровья и денег клиентам ;)
4. andrewks 1375 23.04.13 08:03 Сейчас в теме
(3) AVK_Alex, какие-то проблемы у них на сайте, видимо. если из основной статьи нажать на кнопку "Print" - то же самое, хотя до этого работало
5. graphbuh 261 22.08.13 12:53 Сейчас в теме
6. antonserafim 12.09.18 12:03 Сейчас в теме
Добрый день!

Могли бы Вы взяться за ремонт файловой базы за финансовое вознаграждение?
Мой e-mail: antonpadura@gmail.com
7. malrobert82@mail.ru 09.04.20 20:13 Сейчас в теме
Здравствуйте!

А Вы можете оказать услугу по восстановлению БД?
8. LimonkaRu 07.07.21 14:26 Сейчас в теме
добрый день! ссылка на утилиту не работает. где можно скачать?
Оставьте свое сообщение