Ошибка формата файла журнала регистрации, database disk image is malformed

27.09.15

База данных - Журнал регистрации

Ошибка формата файла журнала регистрации
по причине:
sqlite3_step failed: database disk image is malformed
db: C:\Program Files\1cv8\srvinfo\reg_1541\34eda2fe-bcf4-485e-ab47-4f302319f59a\1Cv8Log\1Cv8.lgd
sql: SELECT severity, date, connectID, session, transactionStatus, transactionDate, transactionID, userCode,
computerCode, appCode, eventCode, comment, metadataCodes, sessionDataSplitCode, dataType, data, dataPresentation,
workServerCode, primaryPortCode, secondaryPortCode FROM EventLog WHERE date<3155378867999999 AND eventCode IN (1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42) ORDER BY date DESC
 
 

Разберемся с

Ошибка формата файла журнала регистрации

database disk image is malformed

Текст сообщения :


Ошибка формата файла журнала регистрации
по причине:
sqlite3_step failed: database disk image is malformed
db: C:\Program Files\1cv8\srvinfo\reg_1541\34eda2fe-bcf4-485e-ab47-4f302319f59a\1Cv8Log\1Cv8.lgd
sql: SELECT severity, date, connectID, session, transactionStatus, transactionDate, transactionID, userCode,
computerCode, appCode, eventCode, comment, metadataCodes, sessionDataSplitCode, dataType, data, dataPresentation,
workServerCode, primaryPortCode, secondaryPortCode FROM EventLog WHERE date<3155378867999999 AND eventCode IN (1,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42) ORDER BY date DESC

Всё печально. Журнал регистрации убит каким-то системным сбоем.

Узнаем, что начиная с версии платформы 8.3.5.1068 журнал регистрации хранится в одном файле базы данных SQLite. Этот файл имеет расширение lgd. (Подробнее http://v8.1c.ru/o7/201310log/index.htm )

На форумах пишут, что надо выгрузить и загрузить базу данных SQLite, чтоб восстановить её работоспособоность, правда с возможными потерями данных.

Качаем и распаковываем отсюда https://www.sqlite.org/download.html последнюю версию утилиты для вашей ОС.
Мне подошла:
Precompiled Binaries for Windows sqlite-shell-win32-x86-3081101.zip (313.47 KiB)
The command-line shell program (version 3.8.11.1). (sha1: 1640b3608784a36a113d4fcf69681503e4e9cdc3)

Берем наш журнал, путь к нему можно взять из текста сообщения

C:\Program Files\1cv8\srvinfo\reg_1541\34eda2fe-bcf4-485e-ab47-4f302319f59a\1Cv8Log\1Cv8.lgd

и копируем в папку с утилитой.

Выполняем команду в командной строке

sqlite3 1Cv8.lgd ".dump" > 1.txt

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

sqlite3 new.db ".read 1.txt"

По окончании получаем работоспособную базу журнала в файле new.db
Теперь ее можно положить себе в архив и начать новый журнал регистрации.
Или попробовать вернуть на место испорченного журнала.

Stay backuped

 

sqlite журнал

См. также

LogManager - Внешний журнал регистрации в SQL

Журнал регистрации Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Журнал регистрации платформы 1С в SQL. Общая база хранения всех журналов. Через com-подключение регламентным заданием периодически догружает журналы регистраций из рабочих баз. Предоставляет настраиваемый доступ к журналам по правам подразделений. Формирует отчеты по пользователям и данным.

10000 руб.

23.05.2014    55417    52    16    

47

Версионирование справочников, документов и регистров сведений на SQL-сервере

Журнал регистрации Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

22800 руб.

22.02.2018    35118    58    53    

55

Журнал изменений с восстановлением состояния ссылочных объектов и архивацией по HTTP / COM (расширение + конфигурация, 8.3.14+, ЛЮБАЯ конфигурация)

Архивирование (backup) Журнал регистрации Поиск данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

База данных «сама» меняет данные в документах/справочниках? Тогда данный журнал изменений для Вас! Практически не влияет на скорость записи объектов за счет быстрого алгоритма! Скорость работы почти в 2 раза выше типового механизма "История изменений"! Позволяет следить за изменениями и удалением в любых ссылочных объектах конфигурации, с возможностью архивации по HTTP(!) или COM, и сверткой данных. А так же, может восстановить состояние реквизитов (значения) до момента изменения или удаления объекта из базы. Есть ДЕМО-база где можно самостоятельно протестировать часть функционала! Работает на любых платформах выше 8.3.14+ и любых конфигурациях! Версия 3.1 от 24.08.2023!

19200 руб.

15.05.2017    42470    10    24    

38

Мониторинг баз и серверов 1С

Журнал регистрации Мониторинг Платформа 1С v8.3 Платные (руб)

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

9000 руб.

28.08.2019    30838    14    21    

65

Версионирование объектов для Альфа-авто, ред 4 и 5.

Оптовая торговля Розничная торговля Журнал регистрации Платформа 1С v8.3 Конфигурации 1cv8 Автомобили, автосервисы Управленческий учет Платные (руб)

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

4800 руб.

03.09.2016    42217    32    24    

36

Уведомления на почту по событиям журнала регистрации на email и в Telegram (для УНФ, УТ 11, БП 3.0, ЗУП 3.0, ERP)

Мессенджеры и боты Журнал регистрации Мониторинг Email рассылки Платформа 1С v8.3 Управляемые формы 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Рассылка уведомлений о событиях журнала регистрации на электронную почту и в Телеграмм. Программа позволяет анализировать журнал регистрации по заданным критериям, находить в нём интересующие события, и отправлять уведомления об этих событиях на электронную почту (одного или нескольких получателей) или в телеграмм. Может работать и как внешняя обработка, и как регламентное задание. Для УНФ, УТ 11, БП 3.0, ЗУП 3.0, ERP.

10800 руб.

18.06.2017    32257    3    2    

15

Регламентное сокращение журнала регистрации

Инструменты администратора БД Журнал регистрации Платформа 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Внешняя обработка для регламентного сокращения журнала регистрации для конфигураций на базе БСП и платформы 8.3.20+

1 стартмани

29.12.2023    1216    11    dima_gsv    1    

12

Магия преобразований: ЖР, ТЖ, RAS/RAC, логи - универсальное решение Vector

Мониторинг Журнал регистрации Технологический журнал Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

13.11.2023    2883    4    AlexSTAL    0    

42
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. asved.ru 36 30.09.15 09:43 Сейчас в теме
При описанном порядке импорт выполняется крайне медленно.

Решение:

sqlite3 <ИмяФайлаДатабазы>
> pragma mmap_size=1073741824;
> pragma cache_size=32768;
> pragma journal_mode=OFF;
> pragma synchronous=OFF;
> .read D:\\db\\file.sql


2. Tavalik 3348 30.09.15 11:41 Сейчас в теме
Спасибо за статью.

Но, скажите, пожалуйста:

  • Чем теперь можно прочитать базу из файла new.db?
  • Как вернуть исправленный файл журнала в информационную базу (Как из new.db теперь сделать файл 1Cv8.lgd)?
3. leksmut 350 30.09.15 14:00 Сейчас в теме
(2) Tavalik,
для поиска просмотра можно использовать SQLite Database Browser
я дописал в основной статье http://1csoft.com/content/oshibka-formata-fajla-zhurnala-registratsii-database-disk-image-malformed

а если хотите вернуть на место, то аккуратно останавливаете сервер 1С, переименовываете new.db в 1cv8.lgd и записываете поверх старого.
6. rail21111991 19.12.15 18:43 Сейчас в теме
(3) а как записать поверх старого 1cv8.lgd новый файл new.db?Просто переименованием не помогло...
7. leksmut 350 21.12.15 10:11 Сейчас в теме
(6) rail21111991,
вы остановили сервер приложений и т.д.? я, честно говоря, не пробовал такое делать.
какие проблемы возникли? файл открывается в конфигураторе на просмотр(с расширением lgd)?
4. pit201201 84 10.11.15 16:20 Сейчас в теме
Не статья, а спасательный круг!
5. pila86 129 25.11.15 08:34 Сейчас в теме
8. vde69 925 12.01.16 19:41 Сейчас в теме
при работе через дамп (как в сабже) у меня получились кракозябры в колонках "данные" и "представление"

а вот

sqlite3 1Cv8.lgd ".clone new.db"


сработало как надо (и быстрее и меньше места нужно, 2 гига примерно 1 минуту делал).

но все равно автору спасибо!!!
Seraph6; tikhmyanov; okrul_85; ipoloskov; корум; Lem0n; Enyel; Sley; Sherlock_kmw; teflon; invertercant; djam_arttek; vasilnikol; +13 Ответить
9. djam_arttek 15.01.16 06:38 Сейчас в теме
(8) vde69, спасибо, это работает
10. bandru 12.02.16 10:27 Сейчас в теме
http://its.1c.ru/db/metod8dev#content:5867:hdoc на ИТС неплохо описано
Seraph6; Yran; kraynev-navi; klinval; +4 Ответить
11. tdml 23.03.16 04:59 Сейчас в теме
(10) Тоже прочитал ИТС инструкцию, но при выполнении второй команды "sqlite3 1Cv8.lgd < backup.sql" всё делалось ужасно долго. Автор данной статьи как раз правильно написал команду "sqlite3 new.db ".read 1.txt"", т.е. не в тот же файл восстанавливать, а в новый. У меня в журнале примерно +100 млн. записей, за сутки отработало примерно 22 млн, если делать по ИТС инструкции. Эти тормоза, я так понял, из-за вывода ошибок на экран - из инструкции:"При этом могут выводиться ошибки. Это нормально.". Прервал вывод и сделал вывод как автор указал, типа "sqlite3 1Cv8_new.lgd < backup.sql", отработало где-то минут за 45-50. Потом также подложил журнал на прежнее место и запустил службу сервера 1С, вроде всё заработало.
12. makfromkz 35 29.06.16 07:03 Сейчас в теме
Спасибо!
Статья помогла зафиксить ошибку
13. project_21 17.03.17 05:21 Сейчас в теме
Доброго времени суток!
На сервере 1С несколько баз.
Не подскажите, как определить, какой лог-файл к какой базе относиться?
14. Andrey92 22.03.17 10:54 Сейчас в теме
(13)
в папке \1cv8\srvinfo\reg_1541 есть файл 1CV8Clst.lst, там расписано
project_21; +1 Ответить
15. project_21 22.03.17 11:17 Сейчас в теме
16. fktrc171 19.05.17 11:04 Сейчас в теме
Спасибо! Помогло, но почему-то новый файл с длиной 0
17. leksmut 350 19.05.17 14:07 Сейчас в теме
(16) уверены, что помогло? может вы похерили журнал часом?
18. fktrc171 30.05.17 12:37 Сейчас в теме
(17) помогло в смысле , что заработало. А журнал почему-то да , почистился , но все делала , как рекомендовано и ошибок нигде не было.
19. user779544 27.06.17 09:10 Сейчас в теме
У меня почему-то не получается, выдает ошибку Error: near "sqlite3": syntax error Подскажите как исправить.
20. 27272 29.06.17 05:06 Сейчас в теме
Подскажите, а если выходит ошибка : Ошибка формата файла журнала регистрации
по причине:
sqlite3_exec failed: database disk image is malformed
db: D:\1CBase\БГУ2\1Cv8Log\1Cv8.lgd
sql: PRAGMA journal_mode = delete

И база файловая. Что делать?
21. djam_arttek 30.06.17 11:47 Сейчас в теме
(20) Не зависимо от того какой вариант базы 1С, файл журнала регистрации 1С в формате sqlite3.

По всей видимости файл побит. Необходимо его восстановить
22. VadimG83 05.07.17 00:29 Сейчас в теме
Огромное спасибо! Спасли! Всем спасибо и еще раз. Спасибо не только за статью, но и за обсуждение данной проблемы!
23. Johnson1987 29 17.11.17 19:17 Сейчас в теме
Делал на файловой базе, платформа 8.3
ввод команд из статьи:
sqlite3 1Cv8.lgd ".dump" > 1.txt
sqlite3 new.db ".read 1.txt"

- вернул new.db с размером 0

помогла команда
sqlite3 1Cv8.lgd ".clone new.db"


Журнал восстановлен, всем спасибо
DimonNT; 1eonov; +2 Ответить
24. user875140 06.12.17 02:05 Сейчас в теме
Сначала, нужно понять - а нужен ли Вам вообще это файл журнала регистрации!!!
Как я понял в нем хранятся информация кто из пользователей что и когда делал (проводил/удалял и т.д.) мне он вообще не нужен! - 1 ПК, ИП, конфигурация УНФ. Я просто его удалил, предварительно на всякий случай сохранив конечно. При первом запуске базы пустой файл был создан ей автоматически. Ошибка исчезла. Все данные в базе остались)).
p.s. у меня эта ошибка вылезла после обновления тех. платформы.
user970589; +1 Ответить
25. user949635 04.04.18 13:11 Сейчас в теме
(24) Спасибо, за Ваш ответ, т.к. Вы правы файл никому и не нужен, а работать надо, квартальный отчет. А тех.поддержка занята и готова удаленно подключиться лишь через неделю.
26. Созинов 09.07.18 17:14 Сейчас в теме
(24) Даже при монопольном доступе к базе может понадобится журнал регистрации. Если в базе работает несколько пользователей, то тем более нужен. Бывает нужно посмотреть кто обращался к документу (историю объектов накладно по всем объектам хранить) или ошибки выполнения. До инцидента он действительно не нужен, хотя иногда может понадобится для анализа. На крупных проектах желательно и технологический журнал настраивать нормально.
27. user940969 30.08.18 04:20 Сейчас в теме
Журнал размером в 16 Гб восстановлен и отправлен в архив. Спасибо за статью!
28. komanch75 28.03.19 09:00 Сейчас в теме
У меня вообще реакции ноль. Эта консоль во время работы должна как то показывать что она работает?
29. user600004_kloleg 12.04.19 16:58 Сейчас в теме
(28)
я вообще реакции ноль. Эта консоль во время ра

файл 1.txt растет?
30. SantiouS 29.12.20 15:51 Сейчас в теме
Развернул бэкап рабочей БД на тестовой БД и возникла необходимость с рабочей БД так же взять журнал регистрации.
Не останавливая работу основной БД скопировал файл журнала регистрации и положил в папку лога тестовой БД. В результате при открытии журнала регистрации возникла описанная выше ошибка.
Помогло:
1) установка "sqlite-tools-win32-x86-3340000.zip
(1.76 MiB) A bundle of command-line tools for managing SQLite database files, including the command-line shell program, the sqldiff.exe program, and the sqlite3_analyzer.exe program."
2) выполнение команды "sqlite3 1Cv8.lgd ".clone 1Cv8.db" с последующей остановкой сервера 1с8 и переименованием 1Cv8.db в 1Cv8.lgd и заменой старого битого файла на новый преобразованный. В конце, естественно, запущен сервер 1с8.

Выполнение команд предложенным автором результата не дало, так как в конце был создан файл БД с нулевым размером.
31. KirillGermann 8 28.03.22 20:21 Сейчас в теме
Мне в подобной "беде" помогло:
1. остановить сервер srv1cv83 stop
2. Найти файла журнала регистрации и удалить его
3. запустить сервер srv1cv83 start (при старте создался новый файл ЖР).
База запустилась.
После запуска изменить формат ЖР
32. user970589 10 23.04.22 13:57 Сейчас в теме
Интересная статья. Ну, если логи в журнале смотреть не нужно, а это 95% случаев - файлик можно просто удалить, база создаст новый.
33. gelion 40 26.05.22 07:51 Сейчас в теме
Мне это решение не помогло. Так как результирующий файл был пустым

А помогло такое решение:

Так же как и в этой статье нужно создать папку с утилитами, в нее скопировать файл 1Cv8.lgd

В командной строке запускаем консоль sqlite3 с открытием этой базы
sqlite3 1Cv8.lgd

Вводим команду восстановления
> .recovery

Консоль начинает печатать огромное количество строк, просто ожидаем

По окончании файл 1Cv8.lgd будет восстановлен, копируем его туда, откуда брали (естественно нужно сохранить оригинал, вдруг это не поможет)
34. luda33 29.09.23 08:19 Сейчас в теме
Для тех кто хочет быстро, база файловая и журнал не важен - переименовать или удалить папку 1Cv8Log в папке базы данных. и все.
Оставьте свое сообщение