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

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

Как почистить 1С 8.3: полная инструкция по очистке базы и кэша

Пошаговая инструкция по очистке 1С 8.3: тестирование и исправление, удаление помеченных объектов, очистка кэша и журнала регистрации без потери данных.

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

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

Главное правило перед любой чисткой — сделать резервную копию. Для файловой базы достаточно скопировать файл 1Cv8.1CD при закрытой базе или выгрузить данные через конфигуратор в файл .dt. Без копии откатить ошибочное удаление объектов будет невозможно.

Что именно нужно чистить в 1С 8.3

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

  • Удаление помеченных объектов — документы, элементы справочников, помеченные на удаление, но физически оставшиеся в базе.
  • Тестирование и исправление — проверка целостности, реиндексация, сжатие таблиц, исправление ссылочных ошибок.
  • Очистка кэша метаданных — удаление временных файлов платформы на клиентских компьютерах.
  • Сокращение журнала регистрации — удаление старых событий, которые раздувают базу.
  • Обслуживание СУБД — для клиент-серверных баз: перестроение индексов и сжатие на уровне SQL-сервера.
База медленно открывается и «подвисает»Проблема в кэше или индексах

Очистка кэша и реиндексация

Файл базы занимает десятки гигабайтНакоплены удалённые объекты и старый журнал

Размер 1Cv8.1CD и журнала регистрации

Ошибки при проведении документовВозможны битые ссылки или повреждения

Тестирование и исправление

«Ошибка формата потока» при запускеПовреждён локальный кэш метаданных

Очистка папок кэша в AppData

Резервная копия перед чисткой

Любая операция сжатия, исправления или удаления объектов необратимо меняет данные. Поэтому первый шаг всегда одинаков. Для файловой базы завершите работу всех пользователей и скопируйте файл 1Cv8.1CD в отдельную папку. Это самый быстрый способ.

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

Для клиент-серверной базы резервную копию делайте средствами СУБД: в MS SQL Server — через Management Studio (задача Back Up), в PostgreSQL — через pg_dump. Выгрузка .dt из конфигуратора тоже работает, но на больших базах занимает много времени.

Удаление помеченных объектов

Когда пользователь «удаляет» документ или элемент справочника, 1С лишь ставит пометку на удаление — физически запись остаётся в таблицах. За месяцы работы таких записей накапливаются тысячи, они занимают место и замедляют выборки.

Удаление выполняется в режиме «1С:Предприятие» с правами администратора. В типовых конфигурациях путь обычно такой: «Администрирование» → «Обслуживание» → «Удаление помеченных объектов» (в старых версиях — «Операции» → «Удаление помеченных объектов»). Система предложит два режима: автоматическое удаление всех помеченных объектов или выборочное, где вы сами отмечаете нужные типы.

Если объект используется в других документах или записях, платформа не даст его удалить и покажет список мест использования. Это нормально: либо сначала уберите ссылки (проведите заново или пометьте связанные документы), либо оставьте объект. Массовое удаление лучше запускать в нерабочее время — на больших объёмах операция монопольно блокирует базу.

Порядок удаления помеченных объектов
  1. 1
    Завершите работу пользователей и сделайте копию базы
  2. 2
    Откройте «Администрирование» → «Обслуживание» → «Удаление помеченных объектов»
  3. 3
    Выберите автоматический режим или отметьте типы объектов вручную
  4. 4
    Запустите удаление и дождитесь отчёта
  5. 5
    Проверьте список неудалённых объектов и места их использования

Тестирование и исправление базы

Штатный инструмент «Тестирование и исправление» запускается из конфигуратора: «Администрирование» → «Тестирование и исправление». Он работает только в монопольном режиме — все пользователи должны выйти из базы.

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

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

Очистка кэша 1С

Кэш метаданных — это служебные файлы, которые платформа хранит на компьютере каждого пользователя для ускорения запуска. При обновлениях конфигурации или сбоях кэш «застаревает», и появляются ошибки вроде «Ошибка формата потока», глюки интерфейса или сообщения о несоответствии версий.

Кэш находится в профиле пользователя Windows в скрытых папках. Типичные пути: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Внутри — папки с длинными именами-идентификаторами баз (вида 8f3a2b1c-…). Чтобы очистить кэш конкретной базы, удалите соответствующую папку при закрытой 1С. Если не уверены, какая папка к какой базе относится, можно удалить все — платформа пересоздаст кэш при следующем запуске, первый вход займёт чуть больше времени.

Альтернативный способ без ручного поиска папок: удалить базу из списка в окне запуска 1С и добавить её заново — при этом старый кэш этой базы перестанет использоваться. Для серверных баз кэш также хранится на сервере в каталоге srvinfo, в подпапках reg_1541 и подобных; его чистят при остановленной службе агента сервера 1С.

text
%APPDATA%\1C\1cv8\ и %LOCALAPPDATA%\1C\1cv8\ — папки кэша; удалять при закрытой 1С

Сокращение журнала регистрации

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

Откройте конфигуратор, перейдите «Администрирование» → «Журнал регистрации» → кнопка «Сократить». Укажите дату, до которой удалять события, и путь для сохранения сокращаемой копии (на случай, если история понадобится). Операция выполняется в монопольном режиме.

После сокращения журнала имеет смысл сразу запустить сжатие таблиц через «Тестирование и исправление» — иначе освободившееся место останется «зарезервированным» внутри файла базы и размер 1Cv8.1CD не уменьшится.

Особенности для клиент-серверных баз

Если база работает на MS SQL Server или PostgreSQL, сжатие и реиндексация в конфигураторе доступны, но реальное обслуживание делается на уровне СУБД. Для MS SQL это план обслуживания с задачами Rebuild Index и Update Statistics, а также настройка модели восстановления и сжатия файлов журнала транзакций (Shrink). Для PostgreSQL — регулярный VACUUM и REINDEX.

Эти операции требуют прав администратора СУБД и понимания последствий: например, сжатие журнала транзакций при полной модели восстановления без резервной копии ломает цепочку бэкапов. Если у вас нет опыта администрирования SQL, эту часть лучше поручить специалисту.

Типичные ошибки
01
Чистка без резервной копии — при сбое данные теряются безвозвратно
02
Удаление папок кэша при запущенной 1С — платформа может упасть с ошибкой
03
Выбор «Очищать ссылки» при исправлении — в документах появляются пустые поля, которые потом сложно восстановить
04
Ожидание уменьшения файла без сжатия таблиц — удалённые данные не освобождают место автоматически
05
Одновременная работа пользователей во время тестирования — операция требует монопольного доступа

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

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

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

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

Размер файла базы
Норма

Заметно уменьшился после удаления объектов и сжатия

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

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

Запуск базы у пользователей
Норма

Вход быстрый, ошибок кэша нет

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

«Ошибка формата потока» — очистите кэш повторно

Проведение документов и отчёты
Норма

Всё работает как раньше или быстрее

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

Ошибки о битых ссылках — повторите тестирование с созданием объектов

Частые вопросы

Как часто нужно чистить базу 1С?

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

Уменьшится ли база, если просто удалить документы?

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

Безопасно ли удалять папки кэша в AppData?

Да, при закрытой 1С это безопасно: платформа пересоздаст кэш при следующем запуске. Не трогайте только папки с самими файловыми базами — кэш и база хранятся в разных местах.

Что делать, если тестирование и исправление зависло?

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

Можно ли чистить базу автоматически по расписанию?

Да, для клиент-серверных баз обслуживание СУБД настраивается планами обслуживания, а выгрузку копии и пакетный запуск конфигуратора можно автоматизировать через планировщик Windows с ключами командной строки платформы.

Итог

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

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