Кэш и временные данные 1С 8.3: папки на компьютере и сервере
Содержание
Временные файлы 1С 8.3 хранятся в профиле пользователя Windows: кэш конфигурации — в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8, разовые служебные файлы — в %TEMP%. В клиент-серверном варианте добавляется кэш сеансовых данных на сервере 1С, в каталоге srvinfo.
Типичный повод заглянуть туда: после обновления бухгалтер открывает базу, а у неё старая форма документа или ошибка при запуске, хотя у коллег всё работает. Чаще всего такое лечится очисткой кэша конкретной базы на этом компьютере. Второй повод — на диске C: закончилось место, и нужно понять, какие папки 1С можно чистить, а какие трогать нельзя.
Пути к временным файлам 1С в Windows
Платформа раскладывает данные по трём местам профиля. Перейти туда быстро можно через Win+R: вставьте путь с переменной и нажмите Enter.
| Что хранится | Путь | Можно удалять |
|---|---|---|
| 📁 Кэш конфигурации и настроек по базам | %APPDATA%\1C\1cv8\<GUID базы> | Да, при закрытой 1С |
| 📁 Локальный кэш метаданных, форм, картинок | %LOCALAPPDATA%\1C\1cv8\<GUID базы> | Да, при закрытой 1С |
| 📄 Список баз (окно запуска) | %APPDATA%\1C\1CEStart\ibases.v8i | Нет — пропадёт список баз |
| 📁 Шаблоны конфигураций и обновлений | %APPDATA%\1C\1cv8\tmplts | Частично, старые версии |
| 📄 Разовые временные файлы | %TEMP% (обычно C:\Users\<имя>\AppData\Local\Temp) | Да, при закрытой 1С |
| 📁 Установленные версии платформы | C:\Program Files\1cv8\8.3.xx.xxxx | Только через удаление программ |
Каждой базе из списка соответствует своя папка с длинным именем вида a1b2c3d4-.... Это идентификатор базы в списке запуска, а не имя базы. Понять, какая папка чья, проще всего по дате изменения: откройте нужную базу, закройте её и отсортируйте папки по времени.
В %TEMP% платформа создаёт файлы с префиксом v8_ и расширением .tmp. Это выгрузки отчётов, вложения перед открытием, промежуточные файлы печати. При нормальном закрытии 1С подчищает их сама, при аварийном — они копятся.
Папка AppData скрыта. Если идёте через Проводник, включите на вкладке «Вид» показ скрытых элементов или просто введите путь в адресную строку.
Если 1С работает на Linux
На Linux у клиента тот же набор, только в домашнем каталоге: кэш лежит в ~/.1cv8/1C/1cv8/. Временные файлы — в /tmp. Логика очистки та же: закрыть клиент и удалить папку
конкретной базы.
Где лежат временные данные в файловой и клиент-серверной базе
От варианта работы базы зависит, что хранится на рабочем месте, а что — на стороне базы или сервера.
Файловая база
В каталоге базы, кроме самого файла данных 1Cv8.1CD, есть служебные объекты:
- 🔒
1Cv8.1CL— файл блокировки. Появляется, пока база открыта. Его не удаляют при работающих пользователях. - 🔍
1Cv8FTxt— индекс полнотекстового поиска. Пересоздаётся программой. - 📜
1Cv8Log— журнал регистрации. Часто растёт до нескольких гигабайт. - ⏳
1Cv8tmp.1CD— временный файл. Возникает при тестировании, реструктуризации, выгрузке. Если остался после сбоя, его можно удалить, когда в базе никого нет.
Сам файл 1Cv8.1CD — это ваша база целиком. Его не удаляют и не переносят при «чистке».
Клиент-серверная база
На компьютере пользователя кэш тот же, что и для файловой базы — в AppData. Но основная часть служебных данных находится на сервере 1С:
- 📁
C:\Program Files\1cv8\srvinfo\reg_1541\<GUID базы>— каталог базы в кластере. Внутри — журнал регистрации и индекс полнотекстового поиска. - 📁 Папки
snccntx...внутри каталога базы — кэш сеансовых данных. Именно их чистят, когда сервер ведёт себя странно после обновления конфигурации. - 📄
1CV8Clst.lstвreg_1541— реестр кластера: список баз, рабочих процессов, администраторов. Удалять нельзя ни при какой очистке. - 📁
%TEMP%пользователя, под которым работает служба (частоUSR1CV8):C:\Users\USR1CV8\AppData\Local\Temp. Туда рабочие процессы пишут свои временные файлы.
Номер 1541 в имени каталога — порт менеджера кластера. Если кластер поднят на другом порту, папка называется по нему. Путь к srvinfo тоже мог быть изменён при установке: точное место видно в параметрах службы «Агент сервера 1С:Предприятия 8.3» (ключ -d в строке запуска).
На Linux-сервере эта структура лежит в домашнем каталоге пользователя службы, обычно /home/usr1cv8/.1cv8/1C/1cv8/reg_1541.
Временные таблицы запросов в клиент-серверном варианте создаются на стороне СУБД. У Microsoft SQL Server это база tempdb, у PostgreSQL — временные файлы в каталоге данных. Это уже зона администратора СУБД, вручную их не удаляют.
Очистка кэша 1С вручную
Самый частый сценарий — сбросить кэш одной базы у одного пользователя.
- Закройте все окна 1С на этом компьютере, включая Конфигуратор.
- Проверьте в диспетчере задач, что не осталось процессов
1cv8.exeи1cv8c.exe. Если висят — завершите их. - Откройте
%APPDATA%\1C\1cv8и удалите папку нужной базы (с GUID в имени). - То же сделайте в
%LOCALAPPDATA%\1C\1cv8. - Запустите базу. Первый вход будет дольше обычного: платформа заново загружает конфигурацию.
Можно удалить и все папки с GUID разом — так сбрасывается кэш всех баз. Файлы с расширением .pfl в корне 1cv8 не трогайте без нужды: в них хранятся настройки окна запуска и последние выбранные параметры.
Кэш хранит и часть пользовательских настроек на компьютере. После удаления могут сброситься размеры окон и последние открытые разделы. Настройки форм и отчётов, сохранённые в базе, останутся.
Сброс кэша на сервере 1С
Делается, когда очистка у пользователей не помогла: ошибка повторяется у всех на одной базе.
- Предупредите пользователей: при остановке службы оборвутся все сеансы во всех базах кластера. Планируйте на нерабочее время.
- Остановите службу «Агент сервера 1С:Предприятия 8.3» в
services.msc. - Перейдите в
srvinfo\reg_1541\<GUID базы>и удалите папкиsnccntx.... - Запустите службу и дождитесь, пока поднимутся рабочие процессы.
GUID базы в кластере отличается от GUID в списке баз у пользователя. Его можно посмотреть в консоли администрирования серверов 1С, в свойствах информационной базы, или найти каталог по самой свежей дате изменения после входа в нужную базу.
Автоматическая очистка: /ClearCache и скрипты
Ручная очистка неудобна, если пользователей двадцать. Есть три способа автоматизировать.
Параметр запуска /ClearCache
Платформа понимает ключ запуска /ClearCache: при старте она очищает кэш клиент-серверных вызовов и метаданных этой базы.
Как добавить его в ярлык базы:
- В окне запуска выделите базу и нажмите «Изменить».
- Пройдите до последней страницы мастера.
- В поле «Дополнительные параметры запуска» впишите
/ClearCache. - Нажмите «Готово».
Держать ключ постоянно не стоит: каждый запуск станет медленнее. Удобнее включить его на один вход после обновления конфигурации и потом убрать.
Тот же ключ работает в командной строке:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /ClearCache
Скрипт очистки для всех баз пользователя
Пакетный файл для запуска перед входом или через планировщик заданий. Он удаляет только папки баз (с GUID в имени), не трогая список баз и шаблоны:
@echo off
taskkill /IM 1cv8.exe /F >nul 2>&1
taskkill /IM 1cv8c.exe /F >nul 2>&1
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 /f "%TEMP%\v8_*.tmp" >nul 2>&1
Команды taskkill закрывают 1С без сохранения. Запускайте скрипт при входе в систему, а не среди дня, когда у человека открыт несохранённый документ.
Политики и терминальный сервер
На терминальном сервере каждый пользователь хранит свой кэш, и за год папки профилей разрастаются. Здесь обычно делают так:
- 🧹 скрипт выше ставят в задачу планировщика «при входе пользователя»;
- 🗓 раз в неделю чистят
%TEMP%всех профилей задачей от имени администратора; - 📏 в перемещаемых профилях исключают
AppData\Localиз синхронизации — кэш не нужно таскать между серверами.
Что съедает место на диске: поиск и разбор
Если диск заполнился, сначала найдите, какая именно папка выросла. Быстрая проверка размера через PowerShell:
Get-ChildItem "$env:APPDATA\1C\1cv8","$env:LOCALAPPDATA\1C\1cv8","$env:TEMP" -Directory |
ForEach-Object { [pscustomobject]@{ Папка = $_.FullName; ГБ = [math]::Round((Get-ChildItem $_.FullName -Recurse -File -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum / 1GB, 2) } } |
Sort-Object ГБ -Descending | Select-Object -First 15
Для наглядной картины подойдёт любая программа анализа диска вроде WinDirStat.
Отдельный случай — файловая база на диске C: пользователя. Сам файл 1Cv8.1CD после удаления больших объёмов данных не уменьшается. Сжать его можно через «Тестирование и исправление» в Конфигураторе с флажком сжатия таблиц, сделав перед этим резервную копию.
Как временные файлы влияют на скорость 1С
Кэш придуман, чтобы ускорять работу. Платформа не скачивает описание форм, модулей и картинок с сервера при каждом открытии, а берёт локальную копию. Поэтому:
- 🚀 Рабочий кэш ускоряет. Второй и последующие входы в базу быстрее первого.
- 🐢 Удалённый кэш замедляет первый вход. После очистки 1С стартует дольше — от нескольких секунд до пары минут на большой конфигурации и медленной сети.
- ⚠️ Испорченный кэш даёт ошибки. Старая форма после обновления, падение при открытии документа, ошибка загрузки метаданных — частые признаки рассинхронизации.
- 💾 Заполненный диск тормозит всё. Когда на
C:остаётся меньше 1–2 ГБ, Windows и 1С начинают работать заметно медленнее, а выгрузка отчёта в файл может прерваться ошибкой записи.
Отсюда практический вывод: чистить кэш «для профилактики» каждый день не нужно. Это не ускоряет, а замедляет работу. Чистят по поводу: после обновления платформы или конфигурации, при странных ошибках у одного пользователя, при нехватке места.
| Ситуация | Что чистить | Где |
|---|---|---|
| Ошибка у одного пользователя | Кэш базы | AppData этого пользователя |
| Ошибка у всех на одной серверной базе | Сеансовые данные | snccntx... на сервере |
| После обновления конфигурации | Кэш базы, разово | Ключ /ClearCache |
| Кончается место у пользователя | tmplts, %TEMP%, старые платформы | Профиль и Program Files |
| Кончается место на сервере | Журнал регистрации, техжурнал, дампы | srvinfo, каталоги логов |
Если очистка не помогла
Бывает, что после удаления кэша ошибка остаётся. Порядок дальнейших проверок:
- Проверьте другого пользователя Windows. Войдите в ту же базу под другой учётной записью на том же компьютере. Работает — проблема в профиле, а не в базе.
- Сравните версии платформы. Клиент и сервер 1С должны быть одной версии. Если на клиенте другая сборка, окно запуска может стартовать не тот исполняемый файл. Номер версии задаётся в свойствах базы в окне запуска, поле «Версия 1С:Предприятия».
- Проверьте права на папки. Если у пользователя нет записи в
%APPDATA%(бывает после настройки политик безопасности), кэш не создаётся, и 1С выдаёт ошибки при старте. - Исключите антивирус. Проверка каждого файла в
AppData\1Cиsrvinfoзамедляет работу и иногда блокирует запись. Папки кэша и каталог базы обычно добавляют в исключения. - Протестируйте саму базу. Если ошибка воспроизводится у всех и на сервере, дело уже не во временных файлах. Нужна резервная копия и «Тестирование и исправление» в Конфигураторе (для файловой базы) или проверка средствами СУБД.