Возможности обновлятора для очистки кэша баз 1С

2018-04-16T11:57:23+00:00

Буду рассматривать всё очень упрощенно, не вдаваясь в подробности, чтобы как можно больше людей дочитали эту заметку до конца

Что такое кэш баз 1С?

Это файлы, которые 1С создаёт при работе с базой и в дальнейшем использует для ускорения своей работы.

Куда сохраняется кэш баз 1С?

Кэш сохраняется в папки пользователя.

Для современных ОС и для 1С 8.3 и выше это папки:

  • c:\Users\<Пользователь>\AppData\Roaming\1C\1cv8\
  • c:\Users\<Пользователь>\AppData\Local\1C\1cv8\

Где вместо <Пользователь> нужно подставить имя вашего пользователя в операционной системе.

Кэш сохраняется в специальных подпапках вот такого вида:

Каждой такой подпапке соответствует кэш определенной базы.

В каких случаях нужно удалять кэш баз 1С?

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

Например, часто из-за повреждений файлов кэша появляется ошибка .

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

Насколько безопасно удаление кэша баз 1С?

Удаление кэша (жёлтых папок на рисунке выше) не может привести к повреждению базы или потере данных, но есть нюансы о которых читайте ниже.

Папки с кэшем помимо самого кэша содержат в себе так называемые профайлы пользователей (файлы с расширением *.pfl).

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

Вот как выглядят профайлы на жёстком диске:

Их удаление при очистке кэша нежелательно. Если их удалить - ничего страшного не произойдёт, так как в современных конфигурациях использование профайлов для сохранения настроек пользователей практически сведено к минимуму.

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

Как чистит кэш обновлятор?

Чтобы запустить очистку кэша из обновлятора нажмём на значок "метёлочка" на панели слева от списка баз:

Откроется диалог очистки кэша:

Пробежимся по его настройкам.

Базы для очистки кэша

Если мы выбираем какую-то конкретную базу (выделенная ), то очищается кэш только этой базы.

Под кэшем мы понимаем только сам кэш. Никакие профайлы или другие файлы, имеющие отношение к настройкам пользователей не удаляются.

Если мы выбираем все базы , то чистится кэш вообще всех баз, которые когда-либо запускались.

Пользователь компьютера

По умолчанию выбран текущий пользователь. Это тот пользователь, под которым мы сейчас работаем в операционной системе Windows.

Возможность "все пользователи этого компьютера" полезна для терминального сервера, когда база подключена сразу у многих пользователей компьютера и нужно почистить кэш им всем (вы ведь помните, что кэш сохраняется в индивидуальные папки пользователей компьютера, то есть у каждого пользователя он свой).

Внимание! Чтобы стала возможной очистка кэша баз у других пользователей необходимо:
  • чтобы пользователь, под которым запущен обновлятор обладал соответствующими правами на папки других пользователей (например, был администратором)
  • при включённом UAC , обновлятор нужно запускать правой кнопкой, выбирая пункт "Запуск от имени администратора"

А если вы хотите очистить у всех пользователей кэш конкретной базы , то:

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

Очистить также настройки пользователей между сеансами

Эта галка отвечает за очистку тех самых профайлов, о которых шла речь выше. Очищайте их только, если больше ничего не помогает. И возможно имеет смысл удалить их не на совсем, а в корзину. Чтобы в случае чего можно было восстановить обратно. Об удалении в корзину читайте ниже.

Метод очистки

Можно выбрать тестовое удаление - без самого удаления. Это полезно, если вы не уверены в возможностях обновлятора и хотите посмотреть - что он вообще собрался удалять

Можно выбрать удаление в корзину. Очень хорошая возможность и она стоит по умолчанию. В этом случае вы можете после удаления убедиться, что всё в порядке и только потом удалять файлы из корзины.

Ну и, наконец, третий вариант очистки "удалить насовсем".

Что произойдёт при очистке кэша, если с базой работают пользователи?

Ничего страшного не произойдёт. 1С блокирует файлы кэша от удаления, если они используются.

Если после обновления конфигурации у Вас «поплыли» формы, перестал работать отчет, выскакивают окна с ошибками, то вероятнее всего проблема решается очисткой кэша. Мы расскажем как.

Что такое кэш?

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

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

Если после обновления конфигурации у Вас «поплыли» формы, перестал работать отчет, выскакивают окна с ошибками, то вероятнее всего проблема решается очисткой кэша.

Как очистить кэш?

Существуют два основных способа очистки кэша.

1. Запуск базы 1С с использованием параметра «/ClearCache»

Данный метод очень прост. В окне выбора информационной базы выберите ту, чей кэш нужно очистить. Нажмите кнопку «Изменить».

В последнем окне Редактирования информационной базы задайте параметр запуска «/ClearCache». Нажмите «Готово» и запустите информационную базу.

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

2. Очистка кэша 1С вручную

Для удаления файлов кэша вручную необходимо найти папки, где кэш хранится. Для операционных систем Win7 и выше временные файлы хранятся по адресу:

  • C:\Users\Username\AppData\Roaming\1C и C:\Users\Username\AppData\Local\1C в папках, начинающихся с «1cv8».
  • В Windows XP, в папке пользователя по адресу Local Settings\Application Data\1C\.
  • Если папка AppData не видна, то нужно настроить видимость скрытых папок.

Ниже на рисунке показано, как выглядят файлы кэша – папки с длинными непонятными именами. В нашем случае файл всего один.

Для очистки кэша нужно удалить эти папки.

Важно! Удалять папки можно только тогда, когда завершены процессы работы с 1С:Предприятие.

3. Очистка кэша в 1С на сервере или пользовательском ПК с помощью готовых скриптов

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

Этот способ поможет очистить кэш 1С как на клиенте, так и на сервере. Для этого Вам понадобится доступ к соответствующим папкам сервера

4. Дополнительно

Если после использования вышеописанных способов очистки кэша ошибка, например “Не верный формат хранилища данных “, все равно сохраняется, то рекомендуют остановить и вручную чистить папку reg_1541/SNCCNTX. Она расположена на компьютере центрального сервера 1С:Предприятия в каталоге <рабочий каталог кластера> / <идентификатор информационной базы>.

Например:

Будьте внимательны, в этой папке можно чистить не все. Перечислю что чистить можно:

  • 1CV8Reg.lst – реестр кластера (в нем хранятся список зарегистрированных информационных баз, рабочие сервера и процессы, соответствие кластера и доп. менеджера, список админов.)
  • srvribrg.lst – список кластеров (зарегистрированные кластеры и админы центрального сервера)
  • 1cv8ftxt – данные полнотекстового поиска. Они лежат на центральном сервере 1с: рабочий каталог кластера-идентификатор информационной базы
  • 1Cv8Log – журнал регистрации базы *.lgp и *.lgf.

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

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

Своевременная очистка кэша ускоряет работу программы.

Слово кэш происходит от английского cache и переводится как «прятать». Понимается под этим термином объём какой-то информации (данных, команд и пр.), который для удобства и быстроты работы приложения (программы) находится недалеко, в так называемом буфере (в быстрой памяти). Представляет собой набор записей.

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

Представим себе, что после обновления релиза данные (например, конфигурация) изменились. Но при обращении к ним воспроизведена была кэшированная информация из буфера, которая уже потеряла актуальность. Следствием такого в отношении работы программы 1С:Предприятие может быть некорректное отображение документа , таблицы, настройки окон, диалогов и так далее.

Вот в такой ситуации и требуется очистка кэша 1С.

Способы чистки кэша 1С

Очистка является несложной процедурой и есть несколько способов для этого:

Ручное удаление записей

Первый способ заключается в удалении всех временных папок и файлов, касающихся нашей программы.

Удаление файлом-программой

Для простоты и увеличения скорости можно пользоваться специальной программкой, содержащейся в одном маленьком файлике (это способ для админов). В результате запуска этого файла кэш будет очищен. Можно скачать бат-файл или создать самому. Не забывайте о том, что использование такого способа является рискованным и может привести к непредсказуемому результату.

Переустановка базы

Если удалить конкретную информационную базу и установить такую же (с таким же прописанным путём), то в результате таких действий произойдёт отвязка базы. Будет создан новый каталог для кэшированных данных. Старые записи кэша при этом останутся, но будут висеть незадействованными. То есть к ним не будет обращения системы. Потому что новая база будет иметь уже другой идентификатор.

Задаём командой в настройках

При постоянном характере возникновения ошибок стоит применить при запуске инфобазы дополнительные параметры. Такое решение понизит производительность за счёт увеличения времени на обращение к данным. Буфер будет оставаться чистым, однако будут удалятся модули, метаданные для толстого и тонкого клиентов.

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

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

Мы рассмотрели, как в 1С почистить кэш - выбирайте один из способов на своё усмотрение. Все они работают, и вы сможете решить проблему.

Казалось бы, избитая тема чистка кеша 1с, но постоянно возникает как почистить, решил набросать небольшую статейку по этому вопросу. Очень часто у пользователей или у администраторов после обновления, появляются странные ошибки после разбирательств оказывается, что причина таких “глюков” в 1С - кеш.

Что-же такое кеш 1С и как его почистить

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

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

Первый способ чистки кэша 1С

Для решения проблем и “глюков” 1С очень часто помогает очистка кэша платформы 1С.

Идем для (Windows 7)

%userprofile%AppDataRoaming1C1Cv82

%userprofile%AppDataLocal1C1Cv82для

%userprofile%Local SettingsApplication Data1C1Cv82

%userprofile%Application Data1C1Cv82

Зайдя туда, мы находим множество интересных папок:

Все выделенные каталоги являются кэшом БД 1С, их можно смело удалять. ВАЖНО!!! Перед удалением обязательно необходимо выйти из ИБ.

Если Вам не хочется искать где расположены файлы - вы можете воспользоваться небольшим bat-ником (для 8.2 и 8.3 разные, если используются разные платформы можно объединить в один), который очищает папки с временными файлами - скачать можно под статьей. Не забывайте, что Вы пользуетесь ими на свой и риск. Они содержат следующую команду:

rmdir “%AppData%1C1Cv8″ /S /Q

rmdir “%LOCALAPPDATA%1C1Cv8″ /S /Q

Второй способ

Второй способ более простой, однако он не совсем правильный. Для очистки достаточно удалить эту конфигурацию и создать новую с тем же путем к ИБ.

В следствии этого старая папка с кешем “отвяжется” от этой ИБ и создастся новый каталог.

Можно делать и так, кеш очищается, однако временные файлы так и остаются на жестком диске.

Один из вариантов чистки немножко не того о чем идет речь в статье (но как один из вариантов имеет место быть, и о нем необходимо не забывать).

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

Для того, чтобы воспользоваться этим способом в дополнительных параметрах запуска (в списке баз кнопка изменить, последняя закладка) необходимо прописать команду /ClearCache .

Очень часто у пользователей появляются странные ошибки: у одного пользователя программа работает правильно, у другого, рядом, на другом компьютере, совершенно иначе. Зачастую после долгих разбирательств оказывается, что причина таких «глюков» в 1С 8 — кэш.

Ниже расскажу, что такое кэш 1С и как его почистить.

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

Однако очень часто платформа 1С неправильно отрабатывает кеширование конфигурации, и в результате мы получаем неадекватное поведение конфигурации.

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

Первый способ — почистить кэша 1С вручную

Для решения проблем и «глюков» 1С обычно помогает очистка кеша платформы 1C 8.3.

Делается это следующим образом:

шаг 1

Найти каталог, где хранятся временные файлы 1С, их можно увидеть в меню настройки в списке ИБ:

2 шаг

Мы получили адрес вроде

Получите 267 видеоуроков по 1С бесплатно:

C:\Documents and Settings\username\Application Data\1C\1Cv82\tmplts\1c

Папки с кэшем расположены по адресу

C:\Documents and Settings\username\Application Data\1C\1Cv82\

*где username — имя пользователя системы, а папка 1Cv82 может отличаться в зависимости от версии платформы 1С

Зайдя туда, мы находим множество (количество папок равно количеству конфигураций) интересных папок:

Все выделенные каталоги являются кешем БД 1С, их можно смело удалять. Перед удалением обязательно необходимо выйти из ИБ.

Если Вам не хочется искать, где расположены файлы, Вы можете воспользоваться специальной программой (бат-файл), которая очищает папки с временными файлами — скачать . Не забывайте, что Вы пользуетесь ими на свой страх и риск. Они содержат следующую команду:

rmdir «%AppData%\1C\1Cv8» /S /Q
rmdir «%LOCALAPPDATA%\1C\1Cv8» /S /Q

Второй способ очистки временных файлов 1С — удаление базы из списка

Второй способ более простой, однако он не совсем правильный. Для очистки достаточно удалить эту конфигурацию и создать новую с тем же путем к ИБ.

Вследствие этого старая папка с кэшем «отвяжется» от этой ИБ, и создастся новый каталог.

Можно делать и так, кеш очищается, однако временные файлы так и остаются на жестком диске.

Третий способ — параметр ClearCache

Необходимо в дополнительных параметрах запуска (в списке баз кнопка Изменить, последняя закладка) прописать команду /ClearCache . Пример использования:

Видео по очистке кэша в программах 1С:

Если же «глюки» в 1С не пропали после очистки кэша, и 1С работает не так, как хотелось бы, Вы можете обратиться к .

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):