Чистим кэш 1С:Предприятия 8.3 своими руками: от параметра запуска до bat-скрипта

· 9 мин

Содержание

Самый быстрый способ очистить кэш 1С:Предприятия 8.3 самостоятельно — закрыть программу и удалить папки с длинными именами вида a1b2c3d4-… в двух каталогах: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. При следующем входе платформа заново загрузит конфигурацию из базы. Второй способ, без проводника, — добавить к базе параметр запуска /ClearCache.

Типичная ситуация: бухгалтер вечером обновил Бухгалтерию, а утром у кассира открывается старая форма документа или вылетает Ошибка формата потока. В базе всё в порядке, сломан локальный кэш на конкретном компьютере. Всё, что описано ниже, относится к платформе 8.3 целиком и одинаково работает для БП, ЗУП, УТ и других конфигураций.

Когда кэш 1С действительно пора чистить

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

Признаки, при которых очистка кэша помогает:

  • 🔄 после обновления конфигурации видны старые формы, нет новых реквизитов или отчётов;
  • ⚠️ при запуске или открытии формы появляется Ошибка формата потока;
  • 🐢 программа стартует заметно дольше, чем у коллег с той же базой;
  • 🧩 у одного пользователя ошибка воспроизводится, у другого на той же базе — нет;
  • 💾 папка %LOCALAPPDATA%\1C\1cv8 разрослась до нескольких гигабайт.

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

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

Где лежит кэш и что в каких папках

ПутьЧто хранитсяМожно удалять
%APPDATA%\1C\1cv8\<GUID>кэш конфигурации и настроек по базеда, папки с GUID
%LOCALAPPDATA%\1C\1cv8\<GUID>основной объём кэша конфигурациида, папки с GUID
%APPDATA%\1C\1CEStart\ibases.v8iсписок информационных базнет, иначе пропадёт список баз
%TEMP%, файлы v8_*.tmpвременные файлы сеансовда, при закрытой 1С

GUID — это имя вида 3f2a9c1e-7b4d-4e8a-9c21-5d6f7a8b9c0d. Каждая папка с таким именем соответствует одной базе из списка запуска. Чтобы открыть каталог, вставьте %APPDATA%\1C\1cv8 прямо в адресную строку проводника или в окно Win+R.

Способ 1. Очистить кэш через окно выбора информационных баз

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

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

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

После успешного запуска уберите /ClearCache из параметров. Если оставить его навсегда, база каждый раз будет стартовать медленно, как в первый раз.

Приём с пересозданием базы в списке

Есть ещё один способ, которым пользуются администраторы. Выделите базу, нажмите Удалить — из списка уйдёт только ярлык, сама база останется на месте. Затем добавьте её снова кнопкой Добавить → Добавление в список существующей информационной базы и укажите тот же каталог или тот же сервер и имя базы.

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

Способ 2. Ручная очистка кэша 1С 8.3 через проводник

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

  1. Закройте 1С. Откройте Диспетчер задач (Ctrl+Shift+Esc) и убедитесь, что не висят процессы 1cv8.exe, 1cv8c.exe или 1cv8s.exe. Если висят — завершите их.
  2. Нажмите Win+R, введите %APPDATA%\1C\1cv8 и нажмите Enter.
  3. Удалите все папки, имя которых похоже на GUID: буквы и цифры, разделённые дефисами.
  4. Повторите то же для %LOCALAPPDATA%\1C\1cv8.
  5. По желанию откройте %TEMP% и удалите файлы, начинающиеся с v8_.
  6. Запустите 1С.

Файлы 1cv8strt.pfl, 1cv8cmn.pfl и папку ExtCompT трогать не нужно. В ExtCompT лежат установленные внешние компоненты, например для торгового оборудования. Если удалить её, компоненты придётся ставить заново.

Не удаляйте целиком папку %APPDATA%\1C. В ней лежит 1CEStart\ibases.v8i — список баз. Без него окно запуска окажется пустым, и все базы придётся добавлять вручную.

Как найти папку кэша конкретной базы

Иногда нужно сбросить кэш только одной базы, а остальные не трогать, чтобы они не стартовали долго. Откройте файл %APPDATA%\1C\1CEStart\ibases.v8i в Блокноте — только для чтения, ничего не меняя.

Файл разбит на блоки: в квадратных скобках имя базы, ниже строка Connect= с путём и строка ID= с GUID. Скопируйте GUID нужной базы и найдите папку с таким же именем в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Удалите только её.

Если файлы не удаляются

Сообщение «Операция не может быть завершена, так как файл открыт» значит, что какой-то процесс 1С ещё жив. Чаще всего это фоновый процесс, который остался после зависания. Найдите его в диспетчере задач на вкладке Подробности и завершите.

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

Способ 3. Bat-скрипт для глубокой очистки вместо chclean

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

Создайте в Блокноте файл clear1c.bat со следующим текстом:

@echo off
echo Закройте 1С перед очисткой кэша.
pause

for /d %%D in ("%APPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%D"
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%D"
del /q "%TEMP%\v8_*.tmp" 2>nul

echo Кэш 1С очищен.
pause

Как это работает:

  • 🎯 маска *-*-*-*-* выбирает только папки с GUID: в их имени четыре дефиса;
  • 🛡️ ExtCompT, файлы настроек и список баз под маску не попадают;
  • 🧹 последняя строка удаляет временные файлы сеансов, ошибки скрывает 2>nul.

Чтобы русский текст в окне не превратился в крякозябры, сохраните файл в кодировке OEM 866 или замените сообщения на латиницу. На работу удаления кодировка не влияет.

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

Какой способ выбрать

СпособКогда подходитМинусы
/ClearCache в параметрах базыодна база, пользователь без опытанадо не забыть убрать параметр
Пересоздание базы в спискекэш одной базы, без проводникаостаётся мусорная папка
Ручное удаление папоквсе базы сразу, нужно место на дискелегко задеть лишнее
Bat-скриптрегулярная очистка, много пользователейнадо один раз проверить скрипт

Как почистить кэш в режиме Конфигуратор

Конфигуратор использует тот же кэш по базе, что и пользовательский режим. Отдельной кнопки «очистить кэш» в его меню нет. Поэтому способы те же: параметр /ClearCache или удаление папок.

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

"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /F"D:\Base\Buh" /ClearCache

Для серверной базы вместо /F указывают /S"имя_сервера\имя_базы". Ключ DESIGNER запускает Конфигуратор, ENTERPRISE — пользовательский режим.

Когда это нужно на практике:

  • 🔧 после загрузки обновления конфигурация в дереве выглядит старой;
  • 📝 правки в модулях или формах не видны после Обновить конфигурацию базы данных;
  • ⚠️ Конфигуратор выдаёт Ошибка формата потока при открытии объекта.

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

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

В клиент-серверном варианте часть служебных данных кэширует сам сервер 1С. Они лежат в каталоге кластера, по умолчанию C:\Program Files\1cv8\srvinfo\reg_1541, в папках с именами snccntx и GUID.

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

Порядок действий:

  1. Предупредите пользователей и выберите время вне рабочего дня.
  2. Остановите службу Агент сервера 1С:Предприятия 8.3 в оснастке Службы Windows.
  3. Удалите папки snccntx* в каталоге reg_1541. Остальные файлы и папки, в том числе 1CV8Clst.lst, не трогайте: в них настройки кластера и список баз.
  4. Запустите службу обратно.

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

Если служба запущена с другим каталогом данных, путь к srvinfo виден в свойствах службы, в строке запуска после ключа -d.

Профилактика: как не возвращаться к очистке кэша каждую неделю

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

Когда сбрасывать кэш планово
Выполнено: 0 / 5

Что ещё помогает:

  • 🗂️ Чистый список баз. Удаляйте из окна запуска базы, с которыми больше не работаете, а их папки кэша — вручную. Иначе они годами копятся на диске.
  • 🖥️ Терминальный сервер . Положите bat-скрипт в общую папку и запускайте через Планировщик заданий при входе пользователя. Скрипт отработает до запуска 1С, когда файлы ещё не заняты.
  • 💽 Свободное место. Если на системном диске меньше нескольких гигабайт, кэш может записаться не полностью. Это одна из причин ошибок при старте.
  • 🛡️ Антивирус. Проверка каждого файла кэша при запуске заметно замедляет старт. Администратор может добавить каталоги 1C\1cv8 в исключения — по правилам безопасности вашей организации.

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

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

Удалятся ли данные из базы, если очистить кэш?
Нет. Документы, справочники и проводки хранятся в самой базе, а не в кэше. Очистка затрагивает только локальную копию конфигурации на компьютере.
Пропадут ли мои настройки отчётов и форм?
Сохранённые варианты отчётов и настройки форм хранятся в базе и останутся. Могут сброситься мелкие локальные параметры, например размеры и положение некоторых окон.
Нужны ли права администратора Windows?
Для своего кэша — нет: папки AppData принадлежат текущему пользователю. Права администратора нужны, чтобы чистить кэш других пользователей или папки сервера 1С.
Почему после очистки 1С запускается очень долго?
Это нормально для первого запуска: платформа загружает конфигурацию из базы заново. Со второго запуска скорость вернётся. Если медленно каждый раз — проверьте, не остался ли /ClearCache в параметрах базы.
Можно ли очистить кэш, не закрывая 1С?
Нет. Пока программа открыта, файлы кэша заняты и не удалятся. Закройте все окна 1С и проверьте диспетчер задач на зависшие процессы.