Тестирование, исправление и восстановление базы данных 1С

Тестирование, исправление базы данных 1С

Тестирование и исправление — это процедуры, необходимые для диагностики и исправления ошибок в информационной базе 1С.

Тестирование и исправление информационной базы данных в 1С предназначено:
  1. для решения нештатных ситуаций, связанных с нарушением логической, ссылочной целостности;
  2. для получения отчета о поврежденных, несуществующих объектах и их исправлении;
  3. для реиндексации и сжатия таблиц информационной базы для файловой системы работы.

Таким образом, процедура тестирования и исправления информационной базы служит для диагностики и устранения ошибочных состояний информационных баз, имеющих различный формат хранения данных (файловый или клиент-серверный).

Процесс тестирования и исправления информационной базы может быть разбит на несколько этапов. При этом доступны следующие возможности:

  • ограничение времени тестирования и исправления;
  • сохранение параметров тестирования между этапами;
  • продолжение прерванного ранее тестирования и исправления;
  • поддержка тестирования и исправления в командной строке запуска.

Тестирование и исправление информационной базы 1С может выполняться только в монопольном режиме (т.е. работа пользователей с информационной базой в процессе тестирования и исправления невозможна).

Вызов процедур производится в конфигураторе, из меню «Администрирование» — «Тестирование и исправление»:

Тестирование, исправление базы данных 1С

Особенности тестирования и исправления информационной базы в 1С:

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

Тестирование и исправление информационной базы 1С через конфигуратор

  1. Сделать резервную копию имеющейся базы (предпочтительно — путем копирования всей папки с базой, вернее, файла данных базы с именем 1Cv8.1CD; либо путем выгрузки базы в файл .dt через меню «Администрирование» — «Выгрузить информационную базу…»).
  2. Запустить базу в режиме конфигуратора.
  3. В конфигураторе выбрать пункт «Администрирование» — «Тестирование и исправление…».
    Рисунок

    Тестирование, исправление базы данных 1С

    [свернуть]
  4. Выбрать вариант (режим) проверки. Можно выбрать сразу все проверки и режимы, но более рациональным будет выполнять эти проверки и исправления по-порядку:
    Рисунок

    Тестирование и исправление информационной базы 1С

    [свернуть]
    • Реиндексация таблиц информационной базы — для каждой таблицы (например, справочника) в базе заново строится индекс для ускорения поиска по определенным полям. Направлена на повышение быстродействия работы базы.
    • Проверка логической целостности информационной базы проверяет и исправляет логические ошибки в структурах таблиц.
    • Проверка ссылочной целостности информационной базы проверяет все ссылки на объекты, которые могут уже не существовать или быть невалидными.  При данной проверке нужно указать действия с такими объектами (Создавать объекты, Очищать ссылки или Не изменять).
    • Пересчет итогов — это пересчет индексов для регистров, в которых хранится информация, создаваемая документами. Эта проверка заново пересчитывает все итоги за все время и обычно занимает длительное время.
    • Сжатие таблиц информационной базы производит физическое удаление данных, помеченных на удаление, но по каким-то причинам оставшихся в базе. Эта процедура приводит к уменьшению размера информационной базы.  Доступно только для файлового варианта. 
    • Реструктуризация таблиц информационной базы — создаёт новые таблицы с нужной структурой и все данные из старой таблицы переносятся в новую. Обычно эта процедура вызывается при внесении изменений в структуру метаданных конфигурации. Обычно занимает длительное время.
  5. Если база большого размера, то можно ограничить выполнение проверок во времени (флаг  и поля «Прервать выполнение проверки через»).
  6. Нажать кнопку «Выполнить».
  7. После всех проверок в окне «Служебные сообщения» прочитать информацию о результатах тестирования.
  8. Если исправление не помогло — восстановите базу из резервной копии, которую сделали на первом этапе.

Тестирование и исправление информационной базы 1С утилитой chdbfl

В комплект поставки платформы 1С:Предприятие входит вспомогательная утилита chdbfl для тестирования и исправления файлового варианта базы данных.

Порядок тестирования и исправления информационной базы 1С утилитой chdbfl:

  1. Сделать резервную копию имеющейся базы (предпочтительно — путем копирования всей папки с базой, вернее, файла данных базы с именем 1Cv8.1CD; либо путем выгрузки базы в файл .dt через меню «Администрирование» — «Выгрузить информационную базу…»).
  2. Открыть утилиту chdbfl, которая находится в каталоге установленной программы 1С (например, C:\Program Files\1cv8\ «релиз платформы 1с» \bin).
    Рисунок

    Тестирование и исправление информационной базы 1С утилитой chdbfl

    [свернуть]
  3. Запустить программу в монопольном режиме (при отсутствии других работающих пользователей).
    Рисунок

    Тестирование базы 1С

    [свернуть]
  4. В поле «Имя файла БД» выбрать путь к файлу с базой данных (имеет расширение *.1CD), а путь к папке с базой данных можно посмотреть в списке информационных баз диалога запуска 1С:Предприятие.
  5. При необходимости установить флаг «Исправлять обнаруженные ошибки».
  6. Нажать на кнопку «Выполнить». Программа начнет работать и через некоторое время сообщит о завершении процесса тестирования.

1С8 Параметры консольного вызова тестирования и исправления

При вызове из командной строки для ключа /IBCheckAndRepair (тестирование и исправление) предусмотрены два параметра, управляющие проверкой логической целостности:

  • LogIntegrity проверка только логической целостности;
  • LogAndRefsIntegrity проверка логической и ссылочной целостности.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.