Очистка кэша и временных файлов 1С 8.3: от параметра запуска до сервера

· 9 мин

Содержание

Быстрее всего очистить кэш 1С так: откройте свойства базы в окне запуска, на последней странице впишите в поле «Дополнительные параметры запуска» строку /ClearCache и запустите базу. Если не помогло, закройте все окна 1С и удалите временные файлы вручную: папки с длинными именами вида a1b2c3d4-... в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Сами данные базы при этом не страдают.

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

Какие временные файлы создаёт 1С и зачем их удалять

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

Где что хранится на рабочем месте:

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

Признаки, что пора чистить кэш :

  • 🔄 после обновления конфигурации остались старые формы или кнопки;
  • 🧩 появились ошибки вроде Ошибка формата потока или Неизвестный объект метаданных при открытии базы;
  • 🐢 запуск стал заметно дольше, хотя база и сеть не менялись;
  • 🪟 формы открываются «кривыми»: поля съехали, пропали колонки;
  • 💾 папка AppData разрослась до нескольких гигабайт.

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

Встроенные средства очистки: параметр /ClearCache и настройки пользователя

Параметр запуска /ClearCache

Это штатный способ, не требующий доступа к папкам Windows.

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

Параметр сбрасывает кэш клиентского приложения именно этой базы. Остальные базы из списка не затрагиваются.

Если базу запускают ярлыком, параметр добавляют в строку «Объект» в конец, после пути к программе и адреса базы:

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

Путь к базе в примере условный: подставьте свой. Для серверной базы вместо /F используется /S"сервер\имябазы".

Если работаете через браузер

В веб-клиенте папок в AppData нет: роль кэша играет кэш браузера. Очистите его сочетанием Ctrl + Shift + Delete, выбрав файлы кэша за всё время, и заново откройте адрес базы. Сохранённые пароли и закладки при этом можно не трогать: достаточно снять соответствующие галочки.

Сброс настроек форм пользователя

Иногда «ломается» не кэш, а сохранённые настройки форм: ширина колонок, отборы, состав панелей. В конфигурациях на БСП их очищают в разделе Администрирование → Настройки пользователей и прав, через пункт с настройками пользователей. Там можно выбрать пользователя и удалить настройки внешнего вида, отчётов и прочие.

Простой вариант для себя самого: в главном меню (кнопка с тремя полосками в левом верхнем углу) откройте Вид → Установить стандартные настройки. Формы вернутся к виду по умолчанию.

Сброс настроек удаляет и полезное: сохранённые варианты отчётов и личные отборы. Перед очисткой предупредите пользователя.

Ручное удаление кэша в папках Windows

Ручная очистка нужна, когда /ClearCache не помог или база вообще не открывается.

Пошагово

  1. Закройте все окна 1С. Проверьте в диспетчере задач, что нет процессов 1cv8.exe, 1cv8c.exe, 1cv8s.exe.
  2. Нажмите Win + R, введите %APPDATA%\1C\1cv8 и нажмите Enter.
  3. Удалите папки с именами из 36 символов вида 0a1b2c3d-4e5f-6789-abcd-ef0123456789.
  4. Повторите то же для %LOCALAPPDATA%\1C\1cv8.
  5. Откройте %TEMP% и удалите файлы, которые система даст удалить. Занятые пропустите.
  6. Запустите базу. Первый вход займёт больше времени.

Файлы *.pfl в корне %APPDATA%\1C\1cv8 не трогайте без нужды. В них хранятся общие настройки платформы, например последний выбранный пользователь.

Как понять, какая папка относится к нужной базе

Удалять кэш всех баз не обязательно. Каждой базе в списке присвоен свой идентификатор, и папка кэша называется ровно так же.

  1. Откройте в Блокноте файл %APPDATA%\1C\1CEStart\ibases.v8i.
  2. Найдите блок с названием базы в квадратных скобках.
  3. Скопируйте значение строки ID=.
  4. Удалите в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 только папку с этим именем.
[Бухгалтерия предприятия]
Connect=File="D:\Bases\Buh";
ID=0a1b2c3d-4e5f-6789-abcd-ef0123456789

Если удалить базу из списка и добавить заново, ей присвоится новый ID и новая папка кэша. Это тоже рабочий способ «начать с чистого листа», но старая папка останется лежать на диске. Её лучше удалить вручную.

Папка шаблонов tmplts

В %APPDATA%\1C\1cv8\tmplts складываются распакованные шаблоны конфигураций. За несколько лет обновлений там набираются гигабайты. Кэшем в строгом смысле это не является, на ошибки не влияет. Удалять имеет смысл ради места, если обновления ставит другой специалист или шаблоны лежат в общей сетевой папке.

Файловая база: что чистить в каталоге информационной базы

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

В каталоге самой базы лежат файлы, которые к кэшу не относятся:

Файл или папкаНазначениеУдалять
1Cv8.1CDсама база данныхникогда
1Cv8Logжурнал регистрациинет, это история действий пользователей
1Cv8FTxtиндекс полнотекстового поискаможно, но потом индекс придётся перестроить
1Cv8.1CLфайл блокировки открытой базытолько когда базу точно никто не использует

Индекс полнотекстового поиска иногда разрастается и повреждается. После удаления папки 1Cv8FTxt обновите индекс в разделе Администрирование → Обслуживание, там есть блок управления полнотекстовым поиском.

Файл 1Cv8.1CL появляется при открытии базы и исчезает при закрытии. Если 1С упала, файл может остаться и мешать входу. Удаляйте его только убедившись, что база не открыта ни у одного пользователя, иначе у них оборвётся работа.

Перед любыми действиями в каталоге файловой базы скопируйте весь каталог целиком. Это пара минут, а 1Cv8.1CD восстановить без копии бывает невозможно.

Клиент-серверная база: кэш на сервере 1С

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

Когда нужна очистка на сервере

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

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

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

  1. Попросите всех выйти из баз. Проверьте в консоли кластера, что активных сеансов не осталось.
  2. Остановите службу «Агент сервера 1С:Предприятия 8.3» в оснастке services.msc.
  3. Откройте каталог кластера. По умолчанию это C:\Program Files\1cv8\srvinfo\reg_1541.
  4. Удалите папки, имя которых начинается с snccntx. В них лежат сеансовые данные.
  5. Запустите службу и проверьте вход в базу.

Что в srvinfo трогать нельзя:

  • 🚫 файл 1CV8Clst.lst — реестр кластера со списком баз и настроек;
  • 🚫 папки с GUID баз внутри reg_1541 целиком — в них журналы регистрации серверных баз;
  • 🚫 файлы с настройками администраторов кластера.

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

Кэш на стороне СУБД (PostgreSQL или MS SQL) к временным файлам 1С не относится. Его чистят средствами самой СУБД, и к ошибкам кэша конфигурации он отношения не имеет.

Где именно чистить кэш в вашем случае?

Скрипты для автоматической очистки

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

Вариант на bat

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

@echo off
tasklist | find /i "1cv8" >nul
if %errorlevel%==0 (
  echo Закройте все окна 1С и запустите скрипт снова.
  pause
  exit /b
)
for /d %%i in ("%APPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%i"
for /d %%i in ("%LOCALAPPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%i"
del /q /f "%TEMP%\*.*" 2>nul
echo Кэш 1С очищен.
pause

Маска *-*-*-*-* выбирает только папки с GUID: в их именах ровно четыре дефиса. Папка tmplts и файлы настроек не затрагиваются.

Вариант на PowerShell

Тот же смысл, но с точной проверкой имени папки по шаблону GUID:

if (Get-Process -Name 1cv8, 1cv8c, 1cv8s -ErrorAction SilentlyContinue) {
    Write-Host "Закройте 1С и запустите снова"; exit
}
$guid = '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$'
foreach ($root in "$env:APPDATA\1C\1cv8", "$env:LOCALAPPDATA\1C\1cv8") {
    if (Test-Path $root) {
        Get-ChildItem $root -Directory |
            Where-Object { $_.Name -match $guid } |
            Remove-Item -Recurse -Force
    }
}
Write-Host "Готово"

Если политика выполнения блокирует скрипты, запускайте его командой powershell -ExecutionPolicy Bypass -File clear1c.ps1 из той же папки.

Как часто запускать

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

  • 🗓 после обновления конфигурации или платформы, если появились странности;
  • 🗓 при переносе профиля пользователя на новый компьютер;
  • 🗓 раз в квартал на терминальном сервере, где профили многих людей занимают общий диск.

На терминальном сервере скрипт выполняют от имени каждого пользователя: переменные %APPDATA% и %LOCALAPPDATA% указывают на профиль того, кто запустил.

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

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