Чистим кэш 1С 8.3 своими руками: клиент, сервер и параметр /ClearCache
Содержание
Самый быстрый способ очистить кэш
1С 8.3 — закрыть программу и удалить папки с длинными именами вида a1b2c3d4-… в двух каталогах: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Второй вариант без проводника — один раз запустить базу с параметром /ClearCache. Для клиент-серверной базы иногда нужен ещё сброс кэша на сервере 1С: папки snccntx* в каталоге кластера.
Всё это можно сделать самостоятельно, без переустановки платформы и без программиста. Данные базы при очистке кэша не страдают: удаляются только временные копии, которые 1С:Предприятие создаёт на компьютере пользователя.
Зачем 1С держит кэш и когда он начинает мешать
При первом запуске базы платформа скачивает к себе описание конфигурации: формы, модули, макеты, картинки. Следующие запуски идут быстрее, потому что большая часть берётся с локального диска, а не из базы.
Проблема в том, что кэш живёт своей жизнью. Каждая база из списка получает свою папку. Удалили базу из списка — папка осталась. Обновили конфигурацию — рядом легли новые файлы, старые не всегда исчезли. За пару лет работы с десятком баз набегают гигабайты.
Признаки, что пора чистить кэш :
- 🐢 база открывается заметно дольше, чем у коллег на таком же компьютере;
- 🧩 после обновления конфигурации видны старые формы, нет новых полей или команд;
- ❌ при открытии формы или отчёта появляется ошибка, которая не повторяется на другом компьютере;
- 🖼️ «поехали» панели, пропали картинки на кнопках, интерфейс выглядит не так, как у остальных;
- 💾 на системном диске мало места, а папка
AppDataвесит несколько гигабайт.
Последний пункт — самый надёжный ориентир. Остальные симптомы могут иметь и другие причины, но очистка кэша безопасна и занимает пару минут, поэтому её проверяют первой.
Где лежат временные файлы и кэш 1С на компьютере
В Windows 10, 11 и Windows Server 2016 и новее кэш клиента 1С 8.3 хранится в двух местах профиля пользователя:
| Каталог | Что внутри | Можно удалять |
|---|---|---|
%APPDATA%\1C\1cv8 (Roaming) | папки баз с локальными настройками клиента | папки с именами-GUID |
%LOCALAPPDATA%\1C\1cv8 (Local) | кэш конфигурации: формы, модули, макеты | папки с именами-GUID |
%APPDATA%\1C\1CEStart | список баз ibases.v8i и настройки окна запуска | нет, удалите — пропадёт список баз |
%TEMP% | временные файлы отчётов, выгрузок, печати | да, при закрытой 1С |
Чтобы открыть каталог, нажмите Win + R, вставьте путь, например %LOCALAPPDATA%\1C\1cv8, и нажмите Enter. Переменные окружения сами подставят имя пользователя, поэтому путь подходит любому сотруднику.
Внутри вы увидите папки с именами из 36 символов через дефисы — это кэши конкретных баз. Рядом лежат служебные файлы с расширением .pfl и папки вроде logs. Их оставляйте.
Как понять, какая папка относится к какой базе
Имя папки совпадает с идентификатором базы в списке. Откройте файл %APPDATA%\1C\1CEStart\ibases.v8i в Блокноте. У каждой базы есть строка ID=…. Найдите нужную базу по названию в квадратных скобках, скопируйте ID и найдите папку с таким же именем.
Это пригодится, если чистить нужно одну проблемную базу, а не все сразу.
Если папки с таким ID нет, а базу вы запускаете, значит, её добавляли повторно и у записи новый идентификатор. Ориентируйтесь на дату изменения папки.
Ручная очистка кэша 1С 8.3 через проводник
Способ подходит для любого режима работы и не требует прав администратора: это ваш собственный профиль.
- Закройте все окна 1С, включая Конфигуратор. Проверьте в Диспетчере задач (
Ctrl + Shift + Esc), что нет процессов1cv8.exeи1cv8c.exe. - Нажмите
Win + R, введите%APPDATA%\1C\1cv8и нажмите Enter. - Выделите папки с именами-GUID и удалите их. Если чистите одну базу — только её папку.
- Повторите то же самое в
%LOCALAPPDATA%\1C\1cv8. - По желанию очистите
%TEMP%: удалите всё, что удаляется. Файлы, занятые другими программами, Windows пропустит — это нормально. - Запустите 1С и откройте базу.
Первый запуск после очистки будет дольше обычного: платформа заново скачивает конфигурацию. Для типовой Бухгалтерии на обычном компьютере это от нескольких десятков секунд до пары минут. Следующие запуски вернутся к привычной скорости.
Если Windows пишет, что папку нельзя удалить, потому что она открыта в другой программе, — 1С ещё работает. Чаще всего висит фоновый процесс после закрытия окна. Завершите его в Диспетчере задач и повторите.
Что вы теряете при удалении папок из Roaming
В %APPDATA%\1C\1cv8 лежат локальные настройки клиента для этой базы на этом компьютере. После удаления платформа создаст их заново со значениями по умолчанию.
Настройки форм, варианты отчётов, избранное и рабочий стол пользователя в 1С 8.3 хранятся в самой информационной базе. Очистка кэша их не затрагивает, поэтому на другом компьютере и после чистки у пользователя всё останется на месте.
Параметр /ClearCache: сброс кэша без проводника
Платформа умеет чистить кэш сама. Для этого базу запускают с параметром командной строки /ClearCache. Удобно, если у пользователя нет привычки лазить по скрытым папкам или нужно почистить кэш
у десятка сотрудников через ярлык.
Через окно запуска 1С
- В окне запуска выделите базу и нажмите
Изменить. - Пройдите мастер кнопкой
Далеедо последней страницы. - В поле
Дополнительные параметры запускавпишите/ClearCache. - Нажмите
Готовои запустите базу. - После успешного входа вернитесь в
Изменитьи сотрите параметр.
Последний шаг не забывайте. Если параметр останется, кэш будет сбрасываться при каждом входе, и база всегда будет открываться медленно, как в первый раз.
Через ярлык
Если базу запускают ярлыком, добавьте параметр в поле «Объект» свойств ярлыка, после пути к 1cestart.exe или 1cv8.exe, через пробел. Например:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /ClearCache
Здесь /F — путь к файловой базе. Для серверной вместо него указывают /S"сервер\имя_базы". Параметр /ClearCache действует только на ту базу, которую вы запускаете этой командой.
Скрипт и утилиты для очистки кэша
Готовые программы-«чистильщики» для 1С существуют, но ничего сверх ручной очистки они не делают: удаляют те же папки в AppData. Скачивать их с неизвестных сайтов ради этого незачем. Проще держать свой bat-файл, который понятно что делает.
Создайте в Блокноте файл clear1c.bat с таким содержимым (сохраните в кодировке UTF-8):
@echo off
chcp 65001 >nul
rem Проверяем, что 1С закрыта
tasklist | findstr /I "1cv8.exe 1cv8c.exe" >nul
if %errorlevel%==0 (
echo 1С запущена. Закройте все окна 1С и запустите скрипт снова.
pause
exit /b 1
)
rem Удаляем папки кэша баз (имена вида xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
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 Кэш 1С очищен.
pause
Маска *-*-*-*-* выбирает только папки с дефисами, то есть кэши баз. Файл ibases.v8i и служебные .pfl скрипт не трогает: первый лежит в другом каталоге, вторые — файлы, а не папки.
Скрипт запускается от имени обычного пользователя и чистит только его профиль. На терминальном сервере каждому пользователю нужно запустить его в своём сеансе, либо администратор чистит папки профилей в C:\Users\<имя>\AppData вручную, когда пользователи вышли.
Реестр Windows и кэш 1С: что там есть на самом деле
В советах по очистке часто встречается «почистите реестр от 1С». Кэш конфигурации в реестре не хранится, и чистка реестра на скорость или ошибки базы не влияет. Программы-«оптимизаторы» реестра здесь бесполезны и иногда вредны.
Реестр имеет значение в одном случае: если у пользователя перенесены папки профиля. Расположение AppData задаётся в ветке HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, параметры AppData и Local AppData. Если там указан сетевой путь, кэш 1С лежит на сервере, а не на локальном диске. Тогда:
- ищите папки
1C\1cv8по фактическому пути из реестра; - учитывайте, что кэш в сетевом профиле сам по себе замедляет запуск;
- переменные
%APPDATA%и%LOCALAPPDATA%всё равно ведут куда нужно, так что ручная очистка и скрипт сработают без правок.
Вместо реестра для «сброса» используйте параметр /ClearCache из предыдущего раздела: это штатный механизм платформы.
Файловая база и сервер 1С: в чём разница при очистке
В файловом варианте весь кэш — на компьютерах пользователей. Каждый чистит свой профиль, на остальных это не влияет. Саму папку базы с файлом 1Cv8.1CD трогать не нужно и нельзя.
В клиент-серверном варианте кэш есть с двух сторон:
| Где | Что хранится | Как чистить | Кто затронут |
|---|---|---|---|
| Компьютер пользователя | кэш конфигурации и локальные настройки | вручную, скриптом или /ClearCache | только этот пользователь |
| Сервер 1С | сеансовые данные кластера, папки snccntx* | остановка службы и удаление папок | все пользователи всех баз кластера |
Кэш сервера чистят, когда ошибка повторяется у всех пользователей, а клиентская очистка не помогла. Типичный случай — после обновления платформы или аварийной остановки сервера базы открываются с ошибками сеансов.
Как сбросить кэш сервера 1С
Остановка службы обрывает работу всех пользователей во всех базах кластера. Делайте это вечером или в обед, предупредив сотрудников, чтобы они сохранили документы и вышли из программы.
- Остановите службу агента сервера 1С. В Windows она видна в оснастке
services.mscкак «Агент сервера 1С:Предприятия 8.3» с указанием разрядности. - Откройте каталог кластера. По умолчанию это
C:\Program Files\1cv8\srvinfo\reg_1541, где1541— порт менеджера кластера. - Удалите только папки, имя которых начинается с
snccntx. - Запустите службу и дождитесь, пока в консоли кластера появятся рабочие процессы.
Не трогайте файл 1CV8Clst.lst и папки с именами-GUID внутри reg_1541. Первый — реестр кластера со списком баз, в папках баз лежат журналы регистрации. Удалите их — потеряете список баз на сервере или историю журнала.
На Linux каталог кластера по умолчанию — /home/usr1cv8/.1cv8/1C/1cv8/reg_1541. Имя службы зависит от версии платформы; найдите его командой systemctl list-units | grep srv1cv8, остановите через systemctl stop, удалите snccntx* и запустите службу снова.
Проверка после очистки кэша и что делать, если не помогло
Сразу после очистки откройте базу и проверьте то, ради чего всё затевалось: форму с ошибкой, новый отчёт, скорость второго запуска. Именно второго — первый всегда медленный.
1CEStart или файл ibases.v8i. Восстановите файл из корзины. Если его там нет — добавьте базы заново кнопкой Добавить или попросите администратора прислать готовый ibases.v8i./ClearCache. Уберите его.Конфигуратор → Администрирование → Тестирование и исправление, предварительно сделав резервную копию.ragent.exe, rmngr.exe и rphost.exe.Чтобы кэш не разрастался снова, достаточно двух привычек. Удаляйте из списка базы, с которыми больше не работаете, и сразу стирайте их папки по ID. После крупных обновлений конфигурации, если интерфейс ведёт себя странно, начинайте диагностику с одного запуска с /ClearCache.
Частые вопросы
Удалятся ли документы и проводки при очистке кэша 1С?
1Cv8.1CD или на SQL-сервере. Кэш — это копия конфигурации на компьютере пользователя.Нужна ли резервная копия базы перед очисткой кэша клиента?
AppData.Как часто чистить кэш 1С?
Можно ли очистить кэш, не закрывая 1С?
Как почистить кэш всем пользователям терминального сервера?
AppData\Roaming\1C\1cv8 и AppData\Local\1C\1cv8 каждого профиля в C:\Users. Или раздайте bat-скрипт, чтобы каждый запустил его в своём сеансе.