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

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

Тестирование и исправление базы 1С: сколько времени это занимает

Сколько времени занимает тестирование и исправление базы 1С: от чего зависит длительность, как оценить сроки, режимы проверки и типичные ошибки.

Тестирование и исправление (ТиИ) информационной базы 1С — штатная процедура проверки целостности данных, которую запускают через конфигуратор или утилиту chdbfl для файловых баз. Однозначного ответа «сколько по времени» не существует: на небольшой файловой базе процедура может занять 15–30 минут, а на большой клиент-серверной базе объёмом в сотни гигабайт — несколько часов и даже сутки при включённой реструктуризации.

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

Важно понимать заранее: на всё время тестирования и исправления база должна быть в монопольном режиме, пользователи выгоняются из системы. Поэтому планировать процедуру нужно на нерабочие часы, а оценку сроков делать с запасом, особенно если ТиИ запускается впервые после долгой эксплуатации.

От чего зависит длительность тестирования и исправления

Главный фактор — объём базы. Условно можно ориентироваться так: файловая база до 1–2 ГБ обычно проходит полный цикл проверок за десятки минут, база 10–20 ГБ — за несколько часов, а базы свыше 50–100 ГБ могут тестироваться всю ночь и дольше. Это ориентировочные порядки, а не нормативы: реальное время определяется структурой данных и оборудованием.

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

Третий фактор — режим работы. В файловом варианте скорость упирается в диск компьютера, где лежит файл 1Cv8.1CD. В клиент-серверном варианте ТиИ фактически выполняет операции через СУБД (MS SQL, PostgreSQL и др.), и скорость зависит от сервера баз данных, его памяти и дисковой подсистемы.

Размер базыДо 2 ГБ — минуты, свыше 50 ГБ — часы

Оцените размер файла 1Cv8.1CD или объём БД в СУБД

Набор проверокРеструктуризация и ссылочная целостность — самые долгие

Выбирайте только нужные проверки, если время ограничено

Тип дисковHDD в разы медленнее SSD

Проверьте, где физически размещена база

Режим работыКлиент-сервер зависит от СУБД

Уточните загрузку сервера баз данных

Ориентировочные сроки для типовых сценариев

Для планирования удобно мыслить сценариями. Профилактическое ТиИ с реиндексацией и проверкой логической целостности на рабочей базе среднего размера обычно укладывается в окно 1–3 часа — это стандартный объём для ночного регламентного запуска. Если добавить пересчёт итогов по регистрам, время заметно вырастет в зависимости от числа регистров и записей.

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

Проверка физической целостности файловой базы утилитой chdbfl.exe идёт быстрее конфигураторского ТиИ, потому что выполняет только низкоуровневую проверку структуры файла без логических проверок данных. На базе в несколько гигабайт это обычно десятки минут.

СценарийЧто включеноОриентир по времени
Профилактика файловой базы до 2–5 ГБРеиндексация + логическая целостностьОт 15–30 минут до ~1 часа
Проверка chdbfl файловой базыФизическая целостность файлаДесятки минут
Полный ТиИ средней базы (10–30 ГБ)Все проверки без реструктуризацииНесколько часов
Полный ТиИ с реструктуризацией большой базыВсе проверки + реструктуризацияНочь и более

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

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

Главное правило: перед любым запуском тестирования и исправления делается резервная копия. Для файловой базы достаточно скопировать файл 1Cv8.1CD при остановленной работе пользователей. Для клиент-серверной — сделать бэкап средствами СУБД. Режим «Исправление» изменяет данные безвозвратно, и если процесс прервётся или исправит «не то», откат возможен только из копии.

Запуск выполняется через конфигуратор: меню «Администрирование» → «Тестирование и исправление». В открывшемся окне отмечаются нужные проверки и выбирается режим — «Тестирование» (только диагностика) или «Тестирование и исправление». Для первого прохода безопаснее выбрать только тестирование: вы увидите список ошибок и оцените масштаб проблем, не изменяя данные.

Порядок действий
  1. 1
    Сделать резервную копию базы (файл или бэкап СУБД)
  2. 2
    Завершить сеансы всех пользователей и установить монопольный доступ
  3. 3
    Открыть конфигуратор: Администрирование → Тестирование и исправление
  4. 4
    Для первого прохода выбрать режим «Тестирование» без исправления
  5. 5
    Изучить протокол ошибок, затем при необходимости запустить режим с исправлением
  6. 6
    Проверить работоспособность базы: вход, ключевые документы, отчёты

Как сократить время проверки

Если окно обслуживания ограничено, проверки можно разделить. Например, реиндексацию и логическую целостность запускать в одну ночь, а ссылочную целостность — в другую. Такой поэтапный подход безопасен и позволяет не держать базу недоступной сутками.

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

В клиент-серверном варианте часть задач ТиИ эффективнее решать штатными средствами СУБД: перестроение индексов и обновление статистики в MS SQL или PostgreSQL обычно быстрее и управляемее, чем реиндексация через конфигуратор. Полноценную проверку логики данных это не заменяет, но как регламентную меру — вполне.

Чем проверять базу

ТиИ в конфигураторе

Полный набор проверок включая логику данных; долго, требует монопольного режима

Утилита chdbfl.exe

Быстрая проверка физической целостности файловой базы; не проверяет логику и ссылки

Средства СУБД

Индексы и целостность на уровне СУБД для клиент-серверных баз; не заменяют проверку данных 1С

Частые ошибки при тестировании и исправлении

Самая распространённая ошибка — запуск ТиИ без резервной копии «на быстрой базе, там же на полчаса». Именно в таких случаях прерывание по питанию или нехватке места на диске превращает рабочую базу в нечитаемую.

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

Третья ошибка — игнорирование протокола. ТиИ пишет список обнаруженных и исправленных ошибок; если не изучить его, можно не заметить, что механизм исправления удалил объекты с битыми ссылками, и потерянные данные обнаружатся только через недели.

Типичные ошибки
01
Запуск без резервной копии — при сбое данные теряются безвозвратно
02
Включение всех проверок сразу — процесс не укладывается в окно обслуживания
03
Прерывание ТиИ на файловой базе — риск повреждения файла 1Cv8.1CD
04
Игнорирование протокола — удалённые при исправлении объекты остаются незамеченными
05
Запуск при работающих пользователях — ТиИ требует монопольного доступа

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

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

Если ТиИ запускалось после сбоя, дополнительно проверьте те участки, где проявлялась проблема: открывались ли ранее «падавшие» документы, исчезли ли ошибки при проведении. Повторный запуск в режиме «Тестирование» должен показать пустой или минимальный список ошибок.

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

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

Повторное тестирование без исправления
Норма

Ошибок нет или их единичное число

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

Список ошибок такой же или вырос

Ключевые отчёты
Норма

Итоги совпадают со значениями до ТиИ

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

Расхождения в остатках и оборотах

Открытие документов
Норма

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

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

Ошибки чтения, «Объект не найден»

Протокол ТиИ
Норма

Сохранён и изучен список исправлений

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

Протокол потерян, исправления неизвестны

FAQ: частые вопросы о сроках и запуске ТиИ

Можно ли прервать тестирование и исправление, если оно идёт слишком долго?

Технически процесс можно завершить, но для файловой базы это рискованно: прерывание на этапе записи может повредить файл 1Cv8.1CD. Если прерывание неизбежно, после него проверьте базу утилитой chdbfl и будьте готовы восстановить её из резервной копии. Для клиент-серверных баз риск ниже, но транзакции могут откатываться долго.

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

Для клиент-серверных баз на здоровой инфраструктуре регулярный ТиИ не обязателен — достаточно регламентных средств СУБД и мониторинга. Для файловых баз профилактический запуск раз в 1–3 месяца разумен, особенно если бывают аварийные отключения питания. Внепланово ТиИ запускают после сбоев, ошибок чтения и «битых» ссылок.

Почему ТиИ идёт намного дольше, чем в прошлый раз?

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

Чем отличается режим «Тестирование» от «Тестирование и исправление»?

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

Можно ли ускорить ТиИ, не прерывая работу пользователей?

Нет, ТиИ требует монопольного доступа к базе, поэтому параллельная работа невозможна. Сократить простой можно только подготовкой: очисткой данных, выбором минимально необходимого набора проверок, запуском в ночное окно и переносом файловой базы на быстрый диск на время обслуживания.

Достаточно ли проверки chdbfl вместо полного ТиИ?

Нет, это разные уровни проверки. Chdbfl проверяет только физическую целостность файла базы — структуру страниц и таблиц. Логические ошибки данных, битые ссылки и проблемы итогов она не видит: для них нужен ТиИ в конфигураторе с соответствующими проверками.

Итог

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

Время тестирования и исправления 1С варьируется от десятков минут до ночи и дольше — его определяют размер базы, набор проверок и скорость дисков. Планируйте окно с запасом, всегда делайте резервную копию, начинайте с режима только тестирования и обязательно изучайте протокол исправлений.