При работе с информационными базами 1С:Предприятие 8.3, использующими формат хранения журнала регистрации .lgd, многие администраторы сталкиваются с тем, что штатные механизмы очистки не освобождают место на диске. Давайте разберем, почему это происходит и как правильно выполнить обслуживание журнала.
Журнал регистрации в формате .lgd является полноценной базой данных SQLite. Когда вы запускаете стандартную процедуру очистки журнала из режима конфигуратора или через регламентные задания, 1С удаляет записи из таблицы логов. Однако движок SQLite устроен таким образом, что при удалении строк он не возвращает освободившееся пространство операционной системе, а помечает эти области как «свободные» внутри самого файла.
В результате, внутри файла образуются фрагментированные «дыры». Эти области будут повторно использованы системой при записи новых событий в журнал, но сам файл 1Cv8.lgd остается максимально раздутым. Чтобы физически уменьшить размер файла на диске, необходимо выполнить процедуру VACUUM.
Для того чтобы вернуть свободное место на диске, выполним следующие шаги. Будьте внимательны: процесс требует остановки работы сервера 1С.
Агент сервера 1С:Предприятия. Это критически важное условие, так как файл журнала монопольно занят сервером, и выполнение любых операций с ним при активной службе приведет к ошибке доступа или повреждению данных.sqlite3.exe с официального сайта разработчиков SQLite. Убедитесь, что версия утилиты совместима с вашей версией платформы.1Cv8.lgd в безопасное место.
D:\scripts\sqlite3.exe D:\ПутьКБазе\1Cv8Log\1Cv8.lgd vacuum
net start \"1C:Enterprise 8.3 Server Agent (x86-64)\"
При выполнении обслуживания журнала 1Cv8.lgd учитывайте следующие аспекты:
VACUUM создает временную копию базы данных. Это значит, что для успешного завершения операции на диске должно быть свободное пространство, как минимум равное текущему размеру файла журнала (в вашем случае — не менее 28 ГБ). Если места недостаточно, процесс прервется.VACUUM становится слишком сложной в обслуживании, рассмотрите переход на текстовый формат логов. Хотя текстовый формат менее удобен для оперативного анализа через стандартный интерфейс, его обслуживание сводится к простому удалению файлов, что значительно проще в автоматизации.Таким образом, то, что вы наблюдаете, является стандартным поведением SQLite. Используя описанный метод VACUUM, вы сможете эффективно контролировать размер журнала и поддерживать производительность дисковой подсистемы вашего сервера на должном уровне.