Очистка кэша базы 1С 8.3 вручную, параметром /ClearCache и на сервере
Содержание
Чтобы очистить кэш
базы 1С, закройте программу и удалите папки с длинными именами вида 3f2a9c1e-… в двух каталогах: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Второй способ — один раз запустить базу с параметром /ClearCache: платформа сама сбросит кэш этой базы при входе. Данные базы при этом не затрагиваются, удаляются только локальные копии метаданных и служебные файлы.
Всё описанное относится к платформе 1С:Предприятие 8.3 и не зависит от конфигурации: в Бухгалтерии, ЗУП, УТ и ERP кэш устроен одинаково. Отдельно разберём кэш на сервере 1С, который чистят реже и осторожнее, и веб-клиент, где всё решает браузер.
Когда очистка кэша 1С действительно помогает
Платформа хранит на компьютере пользователя копию описания конфигурации, формы, картинки, настройки окон. Так база открывается быстрее: не нужно каждый раз тянуть всё с сервера. Беда в том, что эта копия иногда не успевает за изменениями.
Типичные симптомы устаревшего или повреждённого кэша:
- 🔄 после обновления конфигурации в формах не появились новые поля, а у коллег на других компьютерах всё есть;
- 🐢 база стала заметно дольше открываться только на одном рабочем месте;
- ❌ ошибки при открытии форм и отчётов, которые не повторяются у других пользователей той же базы;
- 🖥️ «съехали» или не сохраняются настройки окон, панелей, списков;
- 💥 программа аварийно закрывается при входе в одну базу, хотя другие открываются нормально.
Главный признак — проблема привязана к конкретному компьютеру или профилю Windows. Если ошибка возникает у всех пользователей сразу, дело почти наверняка не в клиентском кэше. Тогда проверяйте сервер, саму конфигурацию или права.
Перед чисткой попробуйте зайти в ту же базу под тем же пользователем 1С с другого компьютера. Там всё работает — смело чистите кэш на первом.
Когда чистить бесполезно
Очистка кэша не исправит ошибки в данных, не восстановит удалённые документы и не ускорит медленный отчёт, который тормозит из-за объёма записей. Не поможет она и при проблемах с лицензией или правами доступа. Если после чистки симптом остался, ищите причину в другом месте.
Где хранится кэш 1С на компьютере пользователя
В Windows платформа 8.3 раскладывает служебные файлы по двум каталогам профиля пользователя.
| Каталог | Полный путь (Windows 10/11) | Что внутри |
|---|---|---|
%APPDATA%\1C\1cv8 | C:\Users\<имя>\AppData\Roaming\1C\1cv8 | локальные настройки пользователя по каждой базе |
%LOCALAPPDATA%\1C\1cv8 | C:\Users\<имя>\AppData\Local\1C\1cv8 | кэш конфигурации: метаданные, формы, картинки |
В обоих каталогах вы увидите папки с именами из 36 символов, например 5c2b7e14-08a1-4d3f-9b6e-2a7c41d0e9f3. Это и есть кэш: одна такая папка соответствует одной информационной базе. Рядом лежат файлы с расширением .pfl — это общие настройки платформы, их не трогайте.
Папка AppData по умолчанию скрыта. Проще всего попасть в нужный каталог так:
- Нажмите
Win + R. - Введите
%APPDATA%\1C\1cv8и нажмите Enter. - Для второго каталога повторите с
%LOCALAPPDATA%\1C\1cv8.
Как понять, какая папка относится к нужной базе
Если у пользователя десяток баз, а чистить нужно одну, откройте файл списка баз %APPDATA%\1C\1CEStart\ibases.v8i в Блокноте. У каждой базы там есть блок с названием в квадратных скобках и строка ID=…. Значение после ID= совпадает с именем папки кэша.
[Бухгалтерия предприятия (основная)]
Connect=Srvr="srv1c";Ref="buh_main";
ID=5c2b7e14-08a1-4d3f-9b6e-2a7c41d0e9f3
Сам файл ibases.v8i не удаляйте и не правьте: в нём хранится список баз пользователя. Сотрёте — список в окне запуска опустеет, и базы придётся добавлять заново.
Кэш на Linux
В Linux-клиенте кэш лежит в домашнем каталоге пользователя, в скрытой папке ~/.1cv8/1C/1cv8. Принцип тот же: папки с GUID-именами соответствуют базам, удалять их нужно при закрытой программе.
Ручная очистка кэша базы через проводник
Этот способ подходит, когда нужно быстро вылечить одно рабочее место и вы сидите за этим компьютером.
- Закройте все окна 1С на компьютере: и пользовательский режим, и Конфигуратор. Проверьте в диспетчере задач, что не осталось процессов
1cv8.exeи1cv8c.exe. - Откройте
%LOCALAPPDATA%\1C\1cv8. - Удалите папки с GUID-именами. Все — если чистите кэш полностью, или одну — если нашли её по
ibases.v8i. - Откройте
%APPDATA%\1C\1cv8и сделайте то же самое. - Запустите 1С. Первый вход в базу займёт больше времени: платформа заново загрузит конфигурацию.
Если папка не удаляется с сообщением «Файл используется другим процессом», значит, 1С ещё работает. Чаще всего это зависший процесс 1cv8c.exe без окна. Завершите его в диспетчере задач и повторите.
Что потеряется после удаления папки в Roaming: часть локальных настроек вида — размеры окон, последние открытые формы, история выбора в некоторых полях. Сами данные, документы, справочники и пользователи базы останутся на месте. Для файловых баз и для серверных основные пользовательские настройки (варианты отчётов, настройки списков) хранятся в самой информационной базе, так что они тоже сохранятся.
Терминальный сервер
На терминальном сервере у каждого пользователя свой профиль и, значит, свой кэш. Чистить нужно в профиле того, у кого проблема: C:\Users\<логин>\AppData\Local\1C\1cv8 и аналогичный путь в Roaming. Пользователь в этот момент должен выйти из 1С, иначе часть файлов будет занята.
Параметр /ClearCache и очистка из командной строки
Если удалять папки руками неудобно или у пользователя нет прав видеть скрытые каталоги, используйте штатный параметр запуска /ClearCache. Он сбрасывает кэш конкретной базы при входе в неё.
Через окно запуска 1С
- В окне запуска выделите нужную базу и нажмите
Изменить. - Нажимайте
Далее, пока не дойдёте до последней страницы мастера с полем «Дополнительные параметры запуска». - Впишите в поле
/ClearCacheи нажмитеГотово. - Запустите базу.
После того как база открылась и проблема ушла, верните поле в исходное состояние. Если оставить параметр, кэш будет сбрасываться при каждом входе, и база станет открываться медленнее.
Из командной строки или ярлыка
Тот же параметр можно передать при запуске исполняемого файла. Для серверной базы:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S"srv1c\buh_main" /ClearCache
Для файловой базы путь к каталогу базы указывают через /F:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /ClearCache
Вместо 1cestart.exe можно вызывать 1cv8.exe из каталога конкретной версии платформы (C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe). Это удобно, если на компьютере стоит несколько версий и нужна определённая.
Для пользователя, у которого кэш портится регулярно, сделайте отдельный ярлык «1С — сброс кэша» с этой командой. Основной ярлык оставьте без параметра.
Bat-скрипт для полной очистки
Если нужно снести кэш всех баз сразу, удобнее скрипт. Он удаляет только папки с GUID-именами и не трогает ibases.v8i и файлы .pfl:
@echo off
taskkill /im 1cv8c.exe /f >nul 2>&1
taskkill /im 1cv8.exe /f >nul 2>&1
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С очищен
Команды taskkill закрывают 1С без сохранения: несохранённый документ пропадёт. Запускайте скрипт, когда пользователь вышел из программы, или уберите эти две строки и попросите закрыть 1С самостоятельно.
То же на PowerShell, с более строгой проверкой имени папки:
$dirs = "$env:APPDATA\1C\1cv8", "$env:LOCALAPPDATA\1C\1cv8"
Get-ChildItem $dirs -Directory -ErrorAction SilentlyContinue |
Where-Object { $_.Name -match '^[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$' } |
Remove-Item -Recurse -Force
Какой способ выбрать
| Способ | Когда подходит | Минусы |
|---|---|---|
| Ручное удаление папок | одно рабочее место, нужна выборочная чистка | нужно найти скрытые каталоги |
/ClearCache в окне запуска | пользователь сам может нажать пару кнопок | легко забыть убрать параметр |
Ярлык с /ClearCache | кэш портится регулярно у одного человека | только одна база на ярлык |
| Bat или PowerShell | много баз, много компьютеров, терминальный сервер | закрывает 1С без сохранения, если оставить taskkill |
Очистка кэша на сервере 1С
В клиент-серверном варианте у кластера есть своё хранилище служебных данных — каталог srvinfo. Внутри, в папке reg_1541, лежит реестр кластера и каталоги баз. Сеансовые данные рабочих процессов хранятся в папках с именами, начинающимися на snccntx.
Где искать каталог:
- Windows, служба по умолчанию:
C:\Program Files\1cv8\srvinfo\reg_1541; - если при установке задали другой путь — он указан в параметре
-dкомандной строки службы (свойства службы агента вservices.msc); - Linux:
/home/usr1cv8/.1cv8/1C/1cv8/reg_1541.
Серверный кэш чистят, когда проблема у всех пользователей базы: сеансы зависают при входе, после обновления конфигурации рабочие процессы выдают странные ошибки, а клиентская чистка не помогла.
Порядок действий
Остановка службы агента сервера 1С обрывает сеансы всех пользователей всех баз этого кластера. Несохранённые данные пропадут, фоновые и регламентные задания прервутся. Делайте это вне рабочего времени и предупредите людей заранее.
- Попросите пользователей выйти из 1С. Проверьте в консоли администрирования серверов, что активных сеансов нет.
- Остановите службу «Агент сервера 1С:Предприятия 8.3» в
services.msc. В Linux имя службы зависит от версии платформы: найдите его командойsystemctl list-units | grep 1cи остановите черезsystemctl stop. - Убедитесь, что процессы
ragent,rmngrиrphostзавершились. - В каталоге
reg_1541удалите папкиsnccntx*. Такие папки бывают и внутри каталогов отдельных баз — их тоже можно удалить. - Запустите службу и войдите в базу.
Не удаляйте файл 1CV8Clst.lst и целиком каталоги баз. В 1CV8Clst.lst записан реестр кластера: список баз, рабочих серверов, администраторов. Без него кластер «забудет» все базы. В каталогах баз с GUID-именами, кроме сеансовых данных, лежит индекс полнотекстового поиска: если удалить каталог целиком, индекс придётся строить заново, а на большой базе это часы.
Перед удалением скопируйте весь srvinfo в отдельную папку. Если что-то пойдёт не так, остановите службу и верните копию на место.
Кэш веб-клиента и браузера
Веб-клиент не использует папки AppData\1C. Всё, что он кэширует, хранит браузер: скрипты, стили, картинки интерфейса. Поэтому параметр /ClearCache здесь не работает
, а удаление папок с GUID ничего не изменит.
Что делать, если после обновления конфигурации веб-клиент показывает старый интерфейс или ошибки скриптов:
- Обновите страницу без кэша:
Ctrl + F5в Windows. - Если не помогло — очистите данные сайта. В Chrome, Яндекс Браузере и Edge нажмите
Ctrl + Shift + Del, выберите «Изображения и другие файлы, сохранённые в кэше» и период «Всё время». - Для проверки откройте базу в окне инкогнито. Там всё работает — значит, дело точно в кэше браузера.
- В крайнем случае удалите только данные адреса публикации 1С через настройки сайтов в браузере, не трогая остальные.
Тонкий клиент, подключённый к базе по адресу http://… через веб-сервер, — это не веб-клиент. Он кэширует так же, как обычный тонкий клиент, в папках AppData, и чистится описанными выше способами.
Автоматическая очистка и профилактика
Регулярно чистить кэш «на всякий случай» не нужно: платформа сама обновляет его при изменении конфигурации. Автоматизация оправдана в двух случаях: на терминальных серверах с большим числом пользователей и в организациях, где после каждого обновления у кого-то обязательно «не видно новых полей».
Чистка при входе в Windows
Положите bat-скрипт из раздела выше в сценарий входа пользователя через групповые политики: Конфигурация пользователя → Политики → Конфигурация Windows → Сценарии (вход/выход из системы). При входе в Windows 1С ещё не запущена, поэтому строки с taskkill можно убрать — файлы не будут заняты.
Минус подхода: первый запуск каждой базы будет медленнее. На слабом канале до сервера это заметно, поэтому включайте автоочистку, только если проблемы с кэшем действительно повторяются.
Плановая чистка на сервере
Для сервера 1С задайте задание в Планировщике заданий Windows на ночь, после резервного копирования:
net stop "<имя службы агента 1С>"
for /d %%i in ("C:\Program Files\1cv8\srvinfo\reg_1541\snccntx*") do rd /s /q "%%i"
net start "<имя службы агента 1С>"
Точное имя службы посмотрите в её свойствах в services.msc (поле «Имя службы», а не отображаемое имя). Скрипт удаляет папки только в корне reg_1541; если сеансовые данные лежат и внутри каталогов баз, допишите для них вторую строку for. И ещё раз: в момент запуска в базах не должно быть пользователей и фоновых заданий.
Что снижает потребность в чистке
- ✅ Обновляйте конфигурацию, когда все пользователи вышли, и проверяйте, что после обновления никто не работает в старом сеансе.
- ✅ Держите на всех компьютерах одну версию платформы, совпадающую с версией сервера.
- ✅ Исключите каталоги
AppData\Local\1Cиsrvinfoиз проверки антивирусом в реальном времени: антивирус, блокирующий файлы кэша, — частая причина их повреждения. - ✅ Следите за свободным местом на системном диске: при нехватке места кэш записывается не полностью.