Администрирование · 11 мин
ТиИ в 1С 8: что это такое и как правильно выполнить тестирование базы
Что такое ТиИ в 1С 8: назначение тестирования и исправления базы, режимы проверки, пошаговая инструкция, риски и типичные ошибки при обслуживании базы.
ТиИ (или ТИИ) в 1С 8 — это сокращение от «тестирование и исправление информационной базы», встроенной процедуры диагностики и восстановления данных. Она запускается из конфигуратора и проверяет целостность базы: физическую структуру файла, логические связи между объектами, корректность ссылок и индексов. Если в базе есть повреждения — например, после аварийного отключения питания или сбоя диска — ТиИ может их обнаружить и частично устранить.
Процедура применяется в двух ситуациях: как плановое обслуживание при подозрении на ошибки и как аварийное восстановление, когда база перестала открываться, выдаёт ошибки формата потока, «битые» документы или неверные итоги. Важно понимать: ТиИ — это инструмент диагностики с возможностью исправления, а не универсальное лекарство. Некоторые повреждения она устраняет удалением повреждённых данных, поэтому запуск без резервной копии недопустим.
Для файловых баз существует также отдельная утилита chdbfl.exe, которая проверяет физическую целостность файла 1Cv8.1CD. Её часто путают с ТиИ, но это разные инструменты с разным уровнем проверки, и в статье мы разберём оба.
Что именно проверяет тестирование и исправление
Процедура ТиИ работает на нескольких уровнях. На физическом уровне проверяется целостность файла базы данных: читаемость страниц, корректность заголовков таблиц, отсутствие «оборванных» записей. На логическом уровне проверяются ссылки между объектами — например, существует ли документ, на который ссылается запись в регистре, и нет ли ссылок на несуществующие (удалённые или потерянные) объекты.
Дополнительно ТиИ может пересчитывать итоги по регистрам, перестраивать индексы и проверять логическую целостность конфигурации. Состав проверок задаётся флажками в окне настройки перед запуском — администратор выбирает только нужные режимы, чтобы не тратить время на лишние операции.
Когда нужно запускать ТиИ
Запускать процедуру имеет смысл при появлении конкретных симптомов: ошибки «Ошибка формата потока», «Файл базы данных повреждён» при открытии, зависание или падение платформы при проведении определённых документов, неверные остатки и итоги в отчётах, «битые» ссылки вида «<Объект не найден>» в документах и регистрах.
Второй сценарий — восстановление после аварийных ситуаций: внезапное отключение питания сервера, сбой дисковой подсистемы, принудительное завершение процесса 1С, ошибки сети при работе с файловой базой по сети. Именно такие события чаще всего приводят к физическим повреждениям файла базы.
Не стоит запускать ТиИ «для профилактики» на здоровой базе без необходимости: процедура длительная, требует монопольного доступа и при включённых режимах исправления изменяет данные. Плановая проверка оправдана, если база большая, работает давно и в журнале регистрации периодически появляются ошибки.
Сначала очистить кэш, затем проверить базу
ТиИ в режиме проверки ссылочной целостности
Пересчёт итогов через ТиИ или режим «Управление итогами»
Сначала chdbfl.exe, затем ТиИ
Режимы и настройки процедуры
В окне «Тестирование и исправление» доступны три варианта поведения: «Только тестирование» (проверка без изменений), «Тестирование и исправление» (автоматическое устранение найденных ошибок) и «Тестирование и исправление с удалением объектов» — в ряде версий варианты исправления разделены на «создание объектов» и «удаление объектов». Первый режим безопасен и используется для первичной диагностики.
Из проверок обычно доступны: реиндексация таблиц (перестроение индексов), проверка логической целостности базы, проверка ссылочной целостности, пересчёт итогов, проверка физической целостности (для файловых баз). Реиндексация безопасна и часто ускоряет работу базы. Пересчёт итогов исправляет расхождения в отчётностях по остаткам.
Наиболее осторожно нужно относиться к режимам, которые удаляют данные: при невозможности восстановить повреждённый объект ТиИ может удалить его целиком. Если это документ или элемент справочника, информация будет потеряна безвозвратно. Поэтому сначала всегда запускают «Только тестирование», смотрят протокол ошибок и оценивают масштаб проблемы.
Пошаговая инструкция по запуску
Процедура выполняется в конфигураторе и требует монопольного доступа: все пользователи должны выйти из базы, фоновые задания и сеансы — завершены. Для серверных баз монопольный режим устанавливается через консоль кластера или блокировку сеансов.
- 1Сделайте резервную копию: для файловой базы скопируйте файл 1Cv8.1CD, для любой базы — выгрузите .dt через конфигуратор
- 2Завершите работу всех пользователей и фоновых заданий, убедитесь в отсутствии активных сеансов
- 3Откройте базу в конфигураторе, перейдите в меню Администрирование → Тестирование и исправление
- 4Выберите режим «Только тестирование» и нужные проверки, запустите и дождитесь завершения
- 5Изучите протокол: какие ошибки найдены и в каких объектах
- 6Если ошибки устранимы — запустите «Тестирование и исправление», предварительно убедившись, что копия на месте
- 7После завершения проверьте базу: откройте проблемные документы, сформируйте ключевые отчёты
Время выполнения зависит от размера базы и набора проверок: для небольшой файловой базы это минуты, для серверной базы в десятки гигабайт — часы. Прерывать процедуру принудительно нежелательно: это может оставить базу в промежуточном состоянии. Запускайте ТиИ в окно технического обслуживания, когда простой допустим.
Утилита chdbfl.exe для файловых баз
Если файловая база не открывается даже в конфигураторе, ТиИ запустить невозможно. В этом случае используется утилита chdbfl.exe из каталога bin установленной платформы. Она проверяет физическую целостность файла 1Cv8.1CD и исправляет повреждения на уровне страниц файла.
Порядок простой: скопируйте файл базы в отдельную папку, запустите chdbfl.exe, укажите путь к 1Cv8.1CD, установите флажок «Исправлять обнаруженные ошибки» и нажмите «Выполнить». Утилита выведет протокол в своём окне. После её работы базу открывают в конфигураторе и уже там запускают ТиИ для проверки логической целостности.
Типичные ошибки и ограничения
Самая распространённая ошибка — запуск исправления без копии. Вторая по частоте — попытка лечить ТиИ проблемы, которые ей не подвластны: ошибки формата потока из-за повреждённого кэша метаданных решаются очисткой кэша, а не тестированием базы. Третья — прерывание процедуры на середине и последующая работа с полупроверенной базой.
Важно понимать границы инструмента: ТиИ не восстанавливает данные, физически утраченные на диске, не исправляет ошибки прикладной логики конфигурации и не заменяет восстановление из резервной копии. Если повреждения масштабны, правильная стратегия — откат на последнюю рабочую копию и перенос данных за потерянный период, а не попытка «вытащить» всё исправлением.
Как проверить результат и что делать дальше
После завершения процедуры изучите протокол: в нём перечислены все найденные и исправленные ошибки с указанием объектов. Каждый объект из списка исправленных стоит открыть вручную и убедиться, что данные на месте и корректны. Особое внимание — документам, которые ТиИ «восстановила» или удалила.
Как проверить результат
Ошибки исправлены, список объектов понятен и ограничен
Массовые удаления объектов или повторное тестирование снова находит те же ошибки
Открываются, проводятся, данные совпадают с ожидаемыми
Документы исчезли или содержат пустые реквизиты
Итоги сходятся с данными до сбоя
Расхождения сохраняются после пересчёта итогов
Чистый протокол без ошибок
Ошибки появляются снова — возможны проблемы с диском или СУБД
Если после ТиИ ошибки воспроизводятся, проблема, скорее всего, не в данных, а в инфраструктуре: проверьте диск (chkdsk, SMART), оперативную память сервера, стабильность сети для файлового режима. Повторяющиеся повреждения базы — почти всегда симптом аппаратной сбойности, и пока причина не устранена, база будет «сыпаться» снова.
Что важно запомнить
ТиИ — штатная диагностика и исправление базы 1С из конфигуратора. Всегда начинайте с резервной копии и режима «Только тестирование». Для неоткрывающихся файловых баз сначала используйте chdbfl.exe. Если ошибки возвращаются после исправления — проверяйте диск и оборудование, а не только базу.
Частые вопросы
Чем ТиИ отличается от chdbfl.exe?
ТиИ запускается из конфигуратора и проверяет в основном логическую целостность: ссылки, итоги, индексы. Утилита chdbfl.exe работает с файлом базы напрямую и исправляет физические повреждения страниц файла 1Cv8.1CD, причём даже когда база не открывается. При серьёзном сбое файловой базы сначала применяют chdbfl, затем ТиИ.
Удалит ли ТиИ мои документы?
В режиме «Только тестирование» — нет, процедура ничего не меняет. В режиме исправления объекты, которые невозможно восстановить, могут быть удалены. Именно поэтому перед исправлением обязательна резервная копия и предварительный просмотр протокола тестирования.
Можно ли запускать ТиИ, пока пользователи работают?
Нет. Процедура требует монопольного доступа к базе: все сеансы и фоновые задания должны быть завершены. Для серверных баз сеансы блокируются через консоль кластера, иначе тестирование просто не запустится.
Поможет ли ТиИ при ошибке «Ошибка формата потока»?
Не всегда. Эта ошибка часто вызвана повреждённым кэшем метаданных на клиенте, а не данными в базе. Сначала очистите кэш (удалите базу из списка и добавьте заново либо очистите папки кэша). Если ошибка сохраняется и проявляется у всех пользователей — тогда проверяйте базу через ТиИ.
Как часто нужно делать ТиИ для профилактики?
Жёсткого регламента нет. На стабильно работающей базе без ошибок регулярное тестирование не обязательно. Разумная практика — запускать проверку после аварийных событий (отключение питания, сбой диска) и при появлении симптомов: битых ссылок, неверных итогов, ошибок при открытии объектов.
Что делать, если ТиИ не исправила базу?
Если повреждения масштабны и исправление не помогает, надёжнее восстановить базу из последней рабочей резервной копии и перенести данные за потерянный период. Параллельно проверьте оборудование: повторяющиеся повреждения почти всегда указывают на неисправный диск, память или нестабильную сеть.