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

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

Что такое кэш в программе 1С и зачем его очищать

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

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

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

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

Какие виды кэша существуют в 1С

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

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

Где физически хранится кэш на компьютере

На компьютере с Windows клиентский кэш 1С располагается в профиле пользователя. Основные каталоги — %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Внутри них находятся папки с длинными именами из букв и цифр — это идентификаторы информационных баз. Каждой базе, добавленной в список запуска, соответствует своя папка кэша.

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

text
%APPDATA%\1C\1cv8
%LOCALAPPDATA%\1C\1cv8

Признаки того, что проблема именно в кэше

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

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

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

Как проверить, что виноват кэш

Та же операция на другом компьютере
Норма

Работает без ошибок — чистим локальный кэш

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

Ошибка повторяется у всех — искать причину в данных или конфигурации

Момент появления ошибки
Норма

Началась сразу после обновления конфигурации — типичный случай устаревшего кэша

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

Возникла без обновлений и постепенно усугубляется — проверять базу и оборудование

Поведение после перезапуска
Норма

Ошибка стабильно повторяется в одном месте

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

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

Как очистить кэш самостоятельно: три способа

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

Второй способ — ручная очистка каталогов. Закройте все сеансы 1С, откройте папки %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 и удалите папки с идентификаторами баз. Файлы журнала и шаблоны, расположенные рядом, трогать не нужно. Третий способ — запуск конфигуратора с параметром /ClearCache для конкретной базы: он очищает кэш точечно, не затрагивая остальные базы в списке.

Порядок действий при очистке кэша
  1. 1
    Закройте все сеансы 1С на компьютере, включая конфигуратор
  2. 2
    Откройте каталог %APPDATA%\1C\1cv8 и удалите папки с идентификаторами баз
  3. 3
    Повторите то же в %LOCALAPPDATA%\1C\1cv8
  4. 4
    Запустите 1С и войдите в базу — кэш создастся заново, первый запуск может быть дольше обычного
  5. 5
    Проверьте, исчезла ли ошибка; если нет — проблема не в кэше, переходите к диагностике базы

Когда очистка кэша не поможет и что делать дальше

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

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

Маршрут решения

Как выбрать действие

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

Риски и частые ошибки при работе с кэшем

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

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

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

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

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

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

Итог

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

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

Частые вопросы о кэше в 1С

Удаление кэша приведёт к потере данных в базе?

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

Как часто нужно чистить кэш?

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

Почему после очистки кэша 1С долго запускается первый раз?

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

Чем отличается очистка кэша через параметр /ClearCache?

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

Нужно ли чистить кэш на сервере 1С?

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

Можно ли отключить кэширование в 1С совсем?

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