Очистка кэша 1С на компьютере, сервере и в браузере

· 9 мин

Содержание

Быстрее всего почистить кэш 1С так: закройте программу, в окне запуска выделите базу, нажмите Изменить..., дойдите до последней страницы и впишите /ClearCache в поле «Дополнительные параметры запуска». При следующем входе платформа выбросит локальный кэш этой базы и скачает конфигурацию заново.

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

Когда очистка кэша 1С помогает, а когда бесполезна

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

Чистить кэш имеет смысл, если:

  • 🔄 после обновления конфигурации у части пользователей старые формы, отчёты или меню;
  • ⛔ при запуске появляется Ошибка формата потока или программа закрывается сразу после ввода пароля;
  • 🐢 база стала открываться заметно дольше, хотя у коллег всё быстро;
  • 🧩 в форме пропали реквизиты или кнопки, которые у других пользователей на месте;
  • 🖥️ после смены версии платформы у одного рабочего места начались странности.

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

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

Где хранится кэш 1С: папки для версий 8.3 и 8.2

Каждая база в списке получает свою папку с именем-идентификатором вида 5f3c1a2e-8b47-4d1e-9a0c-3e7b2f61d845. Таких папок две — в профиле Roaming и в Local.

ПлатформаГде искать (Windows)
1С:Предприятие 8.3%APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8
1С:Предприятие 8.2%APPDATA%\1C\1Cv82 и %LOCALAPPDATA%\1C\1Cv82
8.3 на Linux~/.1cv8/1C/1cv8 в домашнем каталоге пользователя

Чтобы открыть папку, нажмите Win+R, вставьте %APPDATA%\1C\1cv8 и нажмите Enter. Обычно это C:\Users\<имя>\AppData\Roaming\1C\1cv8.

Что лежит рядом с папками-идентификаторами и чего трогать не нужно:

  • 📄 файлы *.pfl — локальные настройки платформы (например, последняя выбранная база);
  • 📋 %APPDATA%\1C\1CEStart\ibases.v8i — список баз в окне запуска. Это не кэш. Удалите его — список опустеет.

Если на компьютере стоят и 8.2, и 8.3, у них раздельные папки. Чистка в 1cv8 не затрагивает базы, которые открываются платформой 8.2, и наоборот.

Толстый и тонкий клиенты 8.3 используют одни и те же каталоги. Отдельно чистить «под тонкий клиент» не нужно.

Способ 1. Параметр /ClearCache — без поиска папок

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

Через окно запуска

  1. Закройте все сеансы 1С на этом компьютере.
  2. В окне запуска выделите нужную базу и нажмите Изменить....
  3. Пролистайте мастер до последней страницы.
  4. В поле «Дополнительные параметры запуска» впишите /ClearCache.
  5. Нажмите Готово и откройте базу.
  6. Убедитесь, что всё работает, и снова зайдите в Изменить... — сотрите параметр.

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

Через ярлык или командную строку

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

"C:\Program Files\1cv8\8.3.24.1691\bin\1cv8c.exe" ENTERPRISE /F"D:\Bases\Buh" /ClearCache

Для серверной базы вместо /F указывают /S"сервер\имя_базы". Номер версии в пути подставьте свой — он виден в папке C:\Program Files\1cv8.

В платформе 8.2 надёжнее сразу переходить к ручной очистке из следующего раздела.

Способ 2. Как очистить кэш 1С вручную в папках профиля

Подходит, когда база не открывается вообще или проблема затрагивает несколько баз.

  1. Закройте 1С полностью. Проверьте в диспетчере задач, что нет процессов 1cv8.exe и 1cv8c.exe — висящий процесс держит файлы и не даст их удалить.
  2. Откройте %APPDATA%\1C\1cv8.
  3. Удалите папки с длинными именами-идентификаторами. Файлы *.pfl и папку 1CEStart не трогайте.
  4. Повторите то же в %LOCALAPPDATA%\1C\1cv8.
  5. Запустите 1С. Первый вход в каждую базу займёт больше времени: конфигурация скачивается заново.

Как найти папку только одной базы

Удалять всё не обязательно. Откройте ibases.v8i в Блокноте и найдите блок нужной базы. В нём есть строка ID=... — это и есть имя её папки кэша.

[Бухгалтерия предприятия]
Connect=Srvr="srv1c";Ref="buh";
ID=5f3c1a2e-8b47-4d1e-9a0c-3e7b2f61d845

Удалите только папку 5f3c1a2e-... в обоих каталогах — остальные базы останутся с прогретым кэшем.

Если пользователей несколько (терминальный сервер)

На RDP-сервере у каждого пользователя свой профиль, значит, и свой кэш: C:\Users\<имя>\AppData\Roaming\1C\1cv8. Чистить нужно в профиле того, у кого ошибка. Права администратора для чужих профилей обязательны, для своего — нет.

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

Очистка кэша на сервере 1С:Предприятие

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

Остановка службы обрывает работу всех пользователей на этом сервере. Делайте это вечером или в выходные, предупредив людей заранее. Перед удалением скопируйте каталог reg_1541 целиком в резервную папку.

Порядок на Windows

  1. Попросите пользователей завершить работу.
  2. Откройте services.msc и найдите службу «Агент сервера 1С:Предприятия 8.3». Точное имя службы можно посмотреть командой PowerShell:
Get-Service -DisplayName "*1C*"
  1. Остановите службу.
  2. Откройте каталог кластера. По умолчанию это C:\Program Files\1cv8\srvinfo\reg_1541. Если сервер ставили в другое место, путь виден в свойствах службы: в строке запуска после ключа -d.
  3. Удалите папки, имена которых начинаются на snccntx. Это кэш сеансовых данных.
  4. Запустите службу и проверьте вход в базу.

Порядок на Linux

Каталог по умолчанию — /home/usr1cv8/.1cv8/1C/1cv8/reg_1541. Имя службы зависит от версии и способа установки, найдите его так:

systemctl list-units --type=service | grep -i 1c

Дальше та же логика: остановить службу, удалить snccntx*, запустить.

Что в каталоге сервераМожно удалять?
папки snccntx*да, при остановленной службе
1CV8Clst.lstнет — это реестр кластера со списком баз
1crgsrv.lst, 1cv8wsrv.lstнет — настройки сервера и кластеров
папки баз внутри reg_1541не трогайте без крайней нужды

Удаление 1CV8Clst.lst стирает регистрацию всех баз в кластере. Данные в СУБД останутся, но базы придётся регистрировать заново, а администраторы кластера пропадут.

Кэш веб-клиента: что чистить в браузере

При работе через браузер локальной папки 1cv8 не создаётся. Устаревшие скрипты и стили хранит сам браузер.

  1. Закройте вкладку с базой.
  2. Нажмите Ctrl+Shift+Delete — откроется окно очистки истории в Chrome, Edge, Firefox и Яндекс Браузере.
  3. Выберите «Изображения и файлы в кэше» и «Файлы cookie», период — «Всё время».
  4. Очистите и откройте адрес базы снова.

Чтобы не терять куки других сайтов, сначала проверьте вход в окне инкогнито (Ctrl+Shift+N в Chrome). Если там работает нормально — причина точно в кэше браузера, и можно чистить данные только для адреса публикации через значок замка в адресной строке.

Если в инкогнито ошибка та же, браузер ни при чём. Смотрите сервер 1С или веб-сервер, на котором опубликована база.

Где у вас проблема?

Автоматизация: скрипт очистки кэша 1С

Когда рабочих мест десятки, проще раздать скрипт. Его запускают вручную или вешают на вход пользователя в систему через групповую политику.

Bat-файл для текущего пользователя

@echo off
tasklist /FI "IMAGENAME eq 1cv8c.exe" | find /I "1cv8c.exe" >nul && goto busy
tasklist /FI "IMAGENAME eq 1cv8.exe"  | find /I "1cv8.exe"  >nul && goto busy

for /d %%D in ("%APPDATA%\1C\1cv8\????????-????-????-????-????????????") do rd /s /q "%%D"
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\????????-????-????-????-????????????") do rd /s /q "%%D"
echo Cache cleared.
exit /b 0

:busy
echo Close 1C and run again.
pause
exit /b 1

Маска из вопросительных знаков отбирает только папки-идентификаторы. Файлы *.pfl и 1CEStart скрипт не задевает. Сообщения латиницей — чтобы не возиться с кодировкой консоли.

То же на PowerShell

if (Get-Process 1cv8, 1cv8c -ErrorAction SilentlyContinue) {
    Write-Host "Close 1C and run again."; exit 1
}
$guid = '^[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}$'
"$env:APPDATA\1C\1cv8", "$env:LOCALAPPDATA\1C\1cv8" |
    Where-Object { Test-Path $_ } |
    Get-ChildItem -Directory |
    Where-Object { $_.Name -match $guid } |
    Remove-Item -Recurse -Force

Что учесть при массовом запуске

  • 📆 Не ставьте очистку на каждый вход: первый запуск базы после неё заметно дольше. Разумно — разово после обновления конфигурации или платформы.
  • 👥 Скрипт чистит профиль того, под кем запущен. На терминальном сервере для всех пользователей его нужно выполнить в каждой сессии или пройти по папкам C:\Users\*\AppData с правами администратора.
  • 🖧 Серверный кэш скриптом по расписанию не чистят: остановка агента рвёт сеансы. Это ручная операция в окно обслуживания.

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

Кэш почистили, а проблема на месте — чаще всего из-за одного из этих промахов.

  • ❌ Удалили папку 1C целиком. Вместе с кэшем ушёл ibases.v8i, и список баз пропал. Восстановите файл из корзины или добавьте базы заново.
  • ❌ Чистили, пока 1С была открыта. Часть файлов заблокирована, удалилось не всё. Проверьте диспетчер задач — после закрытия окна процесс иногда живёт ещё несколько секунд, а иногда зависает.
  • ❌ Почистили только Roaming. Часть кэша лежит в %LOCALAPPDATA%, его тоже надо удалить.
  • ❌ Чистили не тот профиль. Администратор зашёл на терминальный сервер под собой и удалил свой кэш, а у пользователя всё осталось.
  • ❌ Перепутали платформы. База открывается в 8.2, а чистили 1cv8. Смотрите, какой платформой запускается база, и идите в соответствующую папку.
  • ❌ Оставили /ClearCache в параметрах. Ошибка ушла, но вход теперь каждый раз долгий.
  • ❌ На сервере удалили лишнее. Вместо snccntx* стёрли файлы *.lst — кластер потерял список баз.

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

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

Пропадут ли данные базы после очистки кэша?
Нет. Документы, справочники и проводки хранятся в самой базе: в файле 1Cv8.1CD или в СУБД. Кэш — только локальная копия служебных данных.
Сбросятся ли мои настройки форм и отчётов?
В 8.3 пользовательские настройки форм и отчётов хранятся в информационной базе, поэтому после очистки локального кэша они остаются.
Нужны ли права администратора, чтобы почистить кэш 1С?
Для своего профиля — нет: папки в AppData принадлежат пользователю. Для чужих профилей и для кэша на сервере 1С права администратора обязательны.
Сколько места занимает кэш 1С и можно ли чистить его ради места?
Папка одной типовой конфигурации может занимать сотни мегабайт. Кэш давно удалённых из списка баз можно смело удалить — новый для них уже не создастся.
Почему после очистки 1С долго запускается?
Платформа заново скачивает конфигурацию и строит кэш. Это разовая задержка при первом входе в каждую базу, дальше скорость возвращается.