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

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

Кэш 1С: как очистить и зачем это нужно

Как очистить кэш 1С вручную и через параметры запуска: пути к папкам кэша, очистка серверного кэша, типичные ошибки и способы проверки результата.

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

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

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

Когда нужно чистить кэш 1С: признаки проблемы

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

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

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

Ошибка только у одного пользователяЛокальный кэш

Чистить кэш на его компьютере

Ошибка у всех пользователейДанные или сервер

Проверять конфигурацию и серверный кэш

Проблема после обновленияУстаревший кэш метаданных

Очистить кэш и перезапустить базу

Медленный запуск базыРазросшийся кэш

Удалить папки кэша, проверить место на диске

Где находится кэш 1С: пути к папкам

Платформа 1С:Предприятие 8 хранит кэш в профиле пользователя Windows. Основные расположения для файлового варианта работы:

  • %APPDATA%\1C\1cv8 — обычно разворачивается в C:\Users\ИмяПользователя\AppData\Roaming\1C\1cv8;
  • %LOCALAPPDATA%\1C\1cv8 — соответственно C:\Users\ИмяПользователя\AppData\Local\1C\1cv8.

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

Папка AppData скрыта по умолчанию. Быстрее всего попасть в неё через диалог «Выполнить» (Win+R), введя путь с переменной окружения, например %APPDATA%\1C\1cv8, — проводник откроет нужный каталог сразу.

Способ 1: ручное удаление папок кэша

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

Сначала полностью закройте 1С: и режим предприятия, и конфигуратор. Если программа останется открытой, часть файлов будет заблокирована, а платформа может тут же пересоздать повреждённый кэш. Затем откройте поочерёдно оба каталога — %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 — и удалите папки с идентификаторами баз (имена вида «a1b2c3d4-…»).

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

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

Порядок действий при ручной очистке
  1. 1
    Закройте все сеансы 1С и конфигуратор
  2. 2
    Нажмите Win+R, введите %APPDATA%\1C\1cv8 и нажмите Enter
  3. 3
    Удалите папки с идентификаторами баз (GUID)
  4. 4
    Повторите для %LOCALAPPDATA%\1C\1cv8
  5. 5
    Запустите базу и дождитесь полной загрузки
  6. 6
    Проверьте, исчезла ли исходная ошибка

Способ 2: очистка через список информационных баз

Более аккуратный вариант, когда не хочется разбираться с GUID-папками: удалить базу из стартового списка и добавить её заново. При удалении базы из списка платформа удаляет и связанный с ней кэш.

Откройте окно запуска 1С, выделите нужную базу и нажмите «Удалить», подтвердив действие. Затем нажмите «Добавить», выберите «Добавление в список существующей информационной базы» и укажите тот же путь, что был раньше. Путь можно предварительно скопировать из свойств базы (кнопка «Изменить»), чтобы не искать его заново.

Этот способ не трогает кэш других баз и не требует доступа к скрытым папкам, поэтому его удобно рекомендовать пользователям без навыков администрирования. Ограничение: он очищает кэш, привязанный к записи в списке, но не удаляет «осиротевшие» папки кэша от давно удалённых баз — их придётся убирать вручную.

Способ 3: параметр запуска /ClearCache и сценарии

В платформе предусмотрен параметр командной строки /ClearCache, который очищает кэш при запуске. Он используется в сочетании с указанием базы, например в ярлыке или пакетном файле. Однако на практике этот параметр работает нестабильно и очищает не все виды кэша, поэтому как единственное средство его лучше не рассматривать, а применять в дополнение к ручной очистке.

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

bat
@echo off
taskkill /f /im 1cv8.exe 2>nul
taskkill /f /im 1cv8c.exe 2>nul
for /d %%i in ("%APPDATA%\1C\1cv8\????????-????-????-????-????????????") do rd /s /q "%%i"
for /d %%i in ("%LOCALAPPDATA%\1C\1cv8\????????-????-????-????-????????????") do rd /s /q "%%i"
echo Кэш 1С очищен
pause

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

Очистка серверного кэша в клиент-серверном варианте

Если база работает на сервере 1С:Предприятия, локальной очистки на компьютерах пользователей может быть недостаточно — у сервера есть собственный кэш. Он находится в каталоге служебных файлов сервера, обычно это C:\Program Files\1cv8\<версия платформы>\srvinfo (на Linux — каталог srvinfo в директории агента сервера).

Внутри srvinfo находятся папки вида reg_1541 и подобные, а в них — кэш по каждой базе. Правильная последовательность: остановить службу агента сервера 1С, удалить содержимое соответствующих папок (или всю папку srvinfo при однозначной диагностике), затем снова запустить службу. Удалять файлы при работающем сервере нельзя — это может привести к повреждению служебных данных кластера.

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

Сравнение способов очистки

Ручное удаление папок

Самый полный результат, но требует доступа к скрытым каталогам и аккуратности

Удаление базы из списка

Просто и безопасно для одной базы; не чистит кэш удалённых ранее баз

Параметр /ClearCache

Быстро, но срабатывает не всегда и не для всех видов кэша

Bat-скрипт

Подходит для массовой и регулярной очистки; требует закрытия 1С

Очистка srvinfo

Нужна только для клиент-серверного режима; требует остановки службы сервера

Как проверить результат и что делать, если не помогло

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

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

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

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

Первый запуск после очистки
Норма

Запуск дольше обычного, ошибок нет

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

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

Поведение у разных пользователей
Норма

У всех база работает одинаково

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

Различия сохраняются — кэш не очищен полностью

Отображение форм
Норма

Формы открываются корректно

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

Старый вид форм — кэш не удалён

Повторная ошибка формата потока
Норма

Не возникает

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

Возникает у всех — нужно тестирование базы

Типичные ошибки
01
Удаление папки с файлом 1Cv8.1CD вместо кэша — потеря базы без резервной копии
02
Очистка при открытой 1С — файлы заблокированы, кэш пересоздаётся повреждённым
03
Удаление только одной из двух папок (Roaming или Local) — часть кэша остаётся
04
Очистка srvinfo при работающей службе сервера — риск сбоя кластера
05
Ожидание, что очистка кэша исправит ошибку в данных — она устраняет только проблемы служебных файлов

Как уменьшить проблемы с кэшем в будущем

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

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

Итог

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

Кэш 1С безопасно удалять — это временные файлы, которые платформа создаст заново. Чистите обе папки (Roaming и Local) при закрытой программе, для серверного режима дополнительно очищайте srvinfo при остановленной службе. Если после полной очистки ошибка осталась у всех пользователей — проблема в данных или конфигурации, а не в кэше.

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

Удалится ли база или данные при очистке кэша?

Нет. Кэш — это только временные служебные файлы в профиле пользователя. Данные информационной базы хранятся отдельно (файл 1Cv8.1CD для файлового режима или в СУБД для клиент-серверного) и при очистке кэша не затрагиваются. Главное — не перепутать папку кэша с каталогом самой базы.

Как найти папку кэша, если AppData не видна?

Нажмите Win+R и введите путь с переменной окружения: %APPDATA%\1C\1cv8 — проводник откроет каталог напрямую, даже если скрытые папки не отображаются. Либо включите показ скрытых элементов в параметрах проводника на вкладке «Вид».

Нужно ли чистить кэш после каждого обновления конфигурации?

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

Ошибка «Ошибка формата потока» — это всегда кэш?

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

Как очистить кэш 1С на сервере Linux?

Принцип тот же: остановить службу агента сервера 1С, удалить содержимое каталога srvinfo (его расположение задаётся при установке, обычно в домашнем каталоге пользователя, под которым работает сервер 1С), затем запустить службу. Локальный кэш тонких клиентов на Linux лежит в ~/.1cv8 в профиле пользователя.

Почему после очистки кэша база запускается дольше?

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