Оглавление
Введение
Наконец, в обновляторе появился механизм управления журналом регистрации сразу для группы баз.
Как настроить маски включения и исключения для архивации нужных файлов? | оглавление | Запуск консоли для администрирования кластера |
Оглавление
Наконец, в обновляторе появился механизм управления журналом регистрации сразу для группы баз.
Вот как выглядит сам диалог для администрирования расширений:
Посмотрим его в действии.
Я покажу всё на примере одной базы, но вы знайте - можно проделывать то же самое сразу для нужного количества баз (выделив их через Ctrl или отметив галками).
Итак, поехали
Если вы собираетесь управлять журналом регистрации для серверных баз, то необходимо предварительно зайти в настройки кластера (в них можно попасть из свойств базы) в обновляторе и указать здесь файл с настройками кластера:
Это позволит обновлятору находить папку с журналом регистрации базы в папке кластера.
Если открыть диалог управления журналом регистрации для серверной базы, то на закладке "Вывести" появится дополнительная опция с именем 'Найти неиспользуемые папки с данными в кластере базы':
При её установке в отчёт дополнительно выведутся пути к папкам в кластере базы, которые больше нигде не используются (в файле настроек кластера нет баз, указывающих на эти папки).
В папках, на которые укажет обновлятор, хранятся файлы журнала регистрации, данные полнотекстового поиска, а также некоторые другие данные относящиеся к конкретным базам.
Эти базы были удалены из кластера (или перерегистрированы) и таким образом папки, на которые укажет обновлятор, оказались отвязанными от конкретных баз в кластере и могут быть удалены или перемещены из папки кластера, чтобы не занимать лишнее место.
Для корректного копирования обновлятор запрашивает монопольный доступ к файла журналам регистрации.
Для осуществления этого в случае файловых баз обновлятор блокирует доступ к базе на время выполнения операции.
В случае же серверной базы обновлятор сначала пытается получить монопольный доступ к файлам журнала регистрации (на тот случай если вы предварительно остановили службу кластера). А в случае неудачи он пытается создать теневую копию диска, на котором расположен журнал регистрации (для этого вам нужно включить механизм теневых копий в обновляторе).
Внимание. Скопированные файлы журнала регистрации обновлятор сжимает в архив. При этом пароль и расширение для архива он берёт из закладки "Архивация баз" в дополнительных настройках программы.
Внимание. Обновлятор намеренно создаёт подпапку с именем "ЖР" в папке, которую указывает пользователь для хранения архивов журнала. Это делается для того, чтобы ничего не сломалось, если пользователь по ошибке (или намеренно) укажет в качестве папки для хранения архивов журнала ту же папку, которая используется для хранения архивов базы.
Для сокращения событий журнала регистрации, предшествующих заданной дате используется соответствующая возможность конфигуратора.
В пакетном режиме конфигуратора за неё отвечает ключ ReduceEventLogSize.
Обновлятор позволяет указать либо конкретную дату сокращения; либо дату, за X дней до текущей (второй вариант имеет смысл при выполнении сокращения журнала через скрипты).
При этом вы можете задать папку, в которую сохранится сокращаемая часть журнала.
Внимание. Сокращенную часть журнала обновлятор сжимает в архив. При этом пароль и расширение для архива он берёт из закладки "Архивация баз" в дополнительных настройках программы.
Внимание. Обновлятор намеренно создаёт подпапку с именем "ЖР" в папке, которую указывает пользователь для хранения сокращенных частей журнала. Это делается для того, чтобы ничего не сломалось, если пользователь по ошибке (или намеренно) укажет в качестве папки для хранения сокращенных частей журнала ту же папку, которая используется для хранения архивов базы.
Если вы попробуете выполнить сокращение журнала регистрации в формате Sqlite, то увидите, что размер файла в котором журнал физически хранится не изменяется.
То есть, если он был 10 гигабайт до процедуры сокращения записей, то 10 гигабайт и останется.
Всё дело в том, что, после удаления записей из журнала регистрации, физически данные с диска не удаляются, а лишь помечаются как удаленные. Это сделано для повышения производительности.
За сжатие журнала регистрации отвечает команда Vacuum, она позволяет удалить все неиспользуемые страницы и дефрагментировать данные.
Выполнение этой команды требует остановки сервера 1с (если речь о серверной базе), чтобы получить монопольный доступ к файлу журнала регистрации.
Поэтому я рекомендую сделать эту операцию (если файл журнала регистрации уже сейчас очень сильно вырос) один раз и в дальнейшем регулярно выполнять сокращение журнала регистрации (мы его рассмотрели выше). Это позволит удерживать размер журнала регистрации примерно на одном уровне.
Обновлятор выполняет команду Vacuum, используя утилиту sqlite3, которая включена в его состав при установке.
Внимание. Не забудьте перед запуском остановить службу кластера 1С.
Мы также можем настроить запуск любой из перечисленных выше операций по расписанию для нужных нам баз.
Давайте настроим сокращение журнала по расписанию.
Для этого переходим на закладку Скрипты в главном окне обновлятора:
Из шаблонов открываем диалог "Управление журналом регистрации" и настраиваем его для сокращения журнал на текущую дату минус 1 день:
Нажимаем на кнопку "Сократить журнал..." и в редактор вставляется текст скрипта с нужными параметрами:
Сохраняем скрипт (кнопка "Сохранить" на нижней панеле):
Далее переходим в настройки программы, кнопка "Расписание":
Здесь создаём новую задачу с типом операции "Запуск скрипта" и выбираем файл с нашим скриптом ("x:\work\reduce_journal.cmd"):
Вот так:
Настраиваем и сохраняем остальные параметры задачи:
Готово.
С уважением, (преподаватель школы 1С программистов и разработчик обновлятора).Нажмите одну из кнопок, чтобы поделиться:
Как настроить маски включения и исключения для архивации нужных файлов? | оглавление | Запуск консоли для администрирования кластера |