Описание ошибки:
Ошибка формата файла журнала регистрации
по причине:
sqlite3_step failed: database disk image is malformed
db: \192.168.1.111FileServer<каталог>1Cv8Log1Cv8.lgd
Ошибка формата файла журнала регистрации в 1С: Предприятие 8. Может возникнуть в любой конфигурации, на любом релизе платформы.
Найденные решения:
Ошибка может возникнуть в любой момент, для любой операции в базе данных. Из-за ошибки станет не возможным открыть список журнала в режиме 1С:Предприятие. Каждая попытка будет заканчиваться одной и той же ошибкой.
В этот момент возникает два варианта развития событий. Первый заключается в том, чтобы восстановить, исправить файл журнала регистрации с помощью соответствующей программы sqlite3. Но этот процесс может оказаться не таким быстрым, как его описывают в соответствующих публикациях. Не будем пересказывать содержание методики, оставив лишь для первого варианта полезные ссылки: Ошибка формата файла журнала регистрации, database disk image is malformed в обсуждении на форуме infostart.ru или Восстановление журнала регистрации на сайте ИТС 1С. Это был первый вариант.
Второй вариант проще и быстрее, но не значит, что он лучше. У каждого из вариантов свои плюсы и минусы. Так вот у второго варианта из плюсов — это его быстрота и простота, а из минусов — данные журнала регистрации будут утрачены. Но, кто-то из специалистов допускает данные вариант в силу его быстроты, когда необходимо вернуть работоспособность базы, если ошибка возникает не только в процессе попытки доступа к журналу регистрации. Надо понимать, какие данные хранятся в журнале регистрации, чтобы оценить критичность их потери в текущей ситуации. В общем случае журнал содержит информацию о базовых действиях пользователей базы: когда пользователь запускал/завершал сеансы работы с базой, основные действия с справочниками и документами базы (создание, изменение, сохранение, проведение, пометка на удаление и т.п.). Если можно отметить, что данные журнала регистрации для отслеживания активности пользователей и оценки их действий практически не используются, то и содержимым журнала с данными до текущего момента можно пожертвовать. Тем более, что после данной операции журнал будет пополняться новыми записями в рабочем режиме, будет создана его новый файл.
Итак, чтобы удалить файл журнала регистрации, необходимо перейти к каталогу, где он содержится. Текст ошибки может подсказать местонахождение файла журнала регистрации 1Cv8.lgd.
В текущем примере демонстрируется работа по удалению файла журнала регистрации файловой базы. Переходим в проводнике к содержимому каталога.
Удаляем файл журнала регистрации 1Cv8.lgd.
Остается дать окончательное согласие на удаление файла.
Если с базой работают пользователи, то небходимо завершить их работу, т.к. даже поврежденный файл журнала регистрации 1Cv8.lgd невозможно будет удалить.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
10-03-2021
Журавлев А.С.
(Сайт azhur-c.ru)
|
|||
Lama12
12.10.15 — 13:54 |
Столкнулись с неприятной «фичей» новой платформы.
Ошибка формата файла журнала регистрации
Как с этим можно побороться? Ведь все что нажито непосильным трудом… за последние 9 месяцев… так и не родилось… |
||
Лефмихалыч
1 — 12.10.15 — 14:01 |
подозреваю, что мистец котенку гуглить «database disk image is malformed » пробовал? |
||
Lama12
2 — 12.10.15 — 14:03 |
(1) Пробовал. Есть предложение сделать какой-то дамп. Но все делается под линуксами. Написано что командная строка sqlite 3 нормально под виндой не работает. Свой специалист по линуксам в отпуске. Так что ищу альтернативные варианты. |
||
Лефмихалыч
3 — 12.10.15 — 14:06 |
(2) ты попробовал что-то и оно не получилось или ни чего не пробовал? |
||
Живой Ископаемый
4 — 12.10.15 — 14:09 |
«Что сделали.
СкопироватьЖурналРегистрации |
||
Lama12
5 — 12.10.15 — 14:15 |
(3) Еще не пробовал. Вот эта статья — http://itsphera.ru/1c/vosstanovlenie-fajla-baz-dannyx-sqlite.html |
||
Lama12
6 — 12.10.15 — 14:44 |
(4) Yt получается. Тоже сообщение. |
||
Lama12 7 — 13.10.15 — 09:10 |
Все получилось. Лог востановился и работает.
Порядок решения проблемы. |
|
TurboConf — расширение возможностей Конфигуратора 1С |
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Ошибка формата файла журнала регистрации
по причине:
sqlite3_step failed: database disk image is malformed
db: C:Program Files1cv8srvinfo
eg_154134eda2fe-bcf4-485e-ab47-4f302319f59a1Cv8Log1Cv8.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 Текст сообщения :
Всё печально. Журнал регистрации убит каким-то системным сбоем. Узнаем, что начиная с версии платформы 8.3.5.1068 журнал регистрации хранится в одном файле базы данных SQLite. Этот файл имеет расширение lgd. (Подробнее http://v8.1c.ru/o7/201310log/index.htm ) На форумах пишут, что надо выгрузить и загрузить базу данных SQLite, чтоб восстановить её работоспособоность, правда с возможными потерями данных. Качаем и распаковываем отсюда https://www.sqlite.org/download.html последнюю версию утилиты для вашей ОС. Берем наш журнал, путь к нему можно взять из текста сообщения C:Program Files1cv8srvinfo и копируем в папку с утилитой. Выполняем команду в командной строке sqlite3 1Cv8.lgd «.dump» > 1.txt т.е. делаем дамп базы данных в текстовый файл. sqlite3 new.db «.read 1.txt» По окончании получаем работоспособную базу журнала в файле new.db Stay backuped |
Настройка журнала
Чтобы увидеть доступные настройки, необходимо зайти в режиме 1С конфигуратор и в главном меню найти пункт «Администрирование — Настройка журнала регистрации…»:
Получите 267 видеоуроков по 1С бесплатно:
В открывшемся интерфейсе доступны следующие настройки ведения журнала:
Здесь в поле «Регистрировать в журнале события» можно указать детализацию регистрируемых данных. Пункт «Не регистрировать» позволяет отключить ведение журнала вовсе. Другие пункты расшифровываются следующим образом:
- Ошибки — все возможные варианты сбоев и ошибок в системе;
- Предупреждения — важные сообщения системы, которые не являются ошибками;
- Информация — вся информация об изменяемых данных системы;
- Примечания — неважные сообщения (почти всегда их можно отключить).
Другие настройки рассмотрим далее, они относятся к оптимизации работы журнала.
Существуют активные сеансы работы с данной базой, использующие версию платформы, не поддерживающую совместную работу с этой версией. Не совпадает версия временного файла
Крепко призадумался, что все это означает. Версия платформы везде абсолютно одинаковая. Специально прошелся по всем компьютерам и убедился, что везде установлена одна и та же версия платформы.
Начал искать информацию в интернете. Удивился ,что ошибка на самом деле не очень популярная, хотя привык к тому, что по ошибкам 1С всегда много информации находится, потому что продукт очень популярный. Но не в этот раз. В одном месте заметил упоминание установленного антивируса Kaspersky Endpoint Security 10
Обратил внимание, что у меня установлена эта же версия. Автор указывал, что проблема кроется конкретно в этой версии антивируса
После удаления, ошибка у него исчезла.
Немного поискав информации конкретно по этой ошибке с антивирусом, убедился, что такие случаи не редкость и встречались у других людей. Удалил с компьютера Kaspersky Endpoint Security 10 и установил 8-ю версию. Ошибка 1С «Существуют активные сеансы работы с данной базой, использующие версию платформы, не поддерживающую совместную работу с этой версией. Не совпадает версия временного файла» исчезла.
Вот такой вот неожиданный глюк совместимости программ. С Kaspersky Endpoint Security 10, к сожалению, это не первый подобный случай. Хоть продукт вышел уже достаточно давно, ошибки с ним случаются до сих пор, приходится использовать более ранние версии.
30.10.2015 Дополнение.
Сегодня вновь столкнулся с подобной ошибкой — Существуют активные сеансы работы с данной базой, использующие версию платформы, не поддерживающую совместную работу с этой версией. Не совпадает версия временного файла. При этом у всех пользователей как минимум пол года стоит 10-я версия Касперского и все было в порядке. Невозможно было зайти ни с одного компьютера. База локальная, расположенная в сетевой папке. Зайти не получалось никому. Была предпринята попытка удалить файлы с маской 1Cv8tmp* в папке с базой, но не получалось, так как файлы были заняты.
У меня не было доступа к серверу с сетевой папкой, посмотреть у кого открыты файлы не получалось. Пользователей с базой работало всего несколько человек и у всех база была закрыта. Но оказалось, что у одного пользователя завис процесс 1С на компьютере и его не было видно, если не заглянуть в список процессов. Через диспетчер задач удалил этот процесс, затем удалил файлы 1Cv8tmp* и зайти в базу удалось.
Онлайн курс «DevOps практики и инструменты»
Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.
Проверьте себя на вступительном тесте и смотрите программу детальнее по .
Где хранится журнал регистрации
Начнем с того, где хранится журнал регистрации в 1С. Варианта может быть два — для файлового и клиент серверного режима работы.
Файловая база
Для файловых баз данных 1С журнал находится в папке с базой данных. Расположение файлов можно узнать при запуске программы в меню выбора базы данных:
Красным выделен путь. Если мы проследуем по этому пути, то увидим следующую картину:
Папка 1Cv8Log — это и есть директория, содержащая журнал регистрации.
- Если Вы планируете перенести файловую базу данных и хотите сохранить историю журнала регистрации, Вам обязательно надо скопировать папку 1Cv8Log в категорию новой базы 1С.
- Если необходимо очистить журнал регистрации 1С в файловой базе, просто удалите папку 1Cv8Log.
Клиент-серверная база 1С SQL
В клиент-серверном режиме файлы истории обычно хранятся на сервере в каталоге:
C:Program Files1cv8srvinfo 1Cv8Log
Чтобы перенести журнал регистрации 1С для базы SQL, так же, как и для файловой, достаточно перенести папку в расположение новой базы.
Так же и с удалением — достаточно просто удалить данную папку.
Решение
Утилита командной строки sqlite
Для Windows утилиту нужно скачать отсюда.
Для Linux следует использовать утилиту, доступную в официальных репозиториях.
Восстановление
ВНИМАНИЕ! Все нижеследующие операции обязательно производите над копией файла журнала регистрации
- Остановите кластер «1С:Предприятия» или завершите все клиенты для файлового варианта.
- Скопируйте испорченный файл 1Cv8.lgd в отдельную директорию. Например, «C:LogRestore».
- Туда же разархивируйте sqlite3.exe из архива, который скачале ранее.
- В командной строке перейдите в рабочую директорию («C:LogRestore»).
- Выполните команду:
sqlite3 1Cv8.lgd .dump >> backup.sql
Откройте файл backup.sql. Он может быть большой и MS Notepad его может не открыть. В этом случае воспользуйтесь, например, Notepad++.
Если самой последней строкой у вас является «ROLLBACK;» — замените ее на «COMMIT;» и сохраните файл.
Переименуйте файл 1Сv8.lgd в текущей директории в 1Cv8-orig.lgd.
В этой же директории выполните команду:
При этом могут выводиться ошибки. Это нормально.
Откройте файл 1Сv8.lgd Конфигуратором пустой файловой базы. Убедитесь, что данные сохранены.
Замените испорченный файл в том месте, где он был изначально на 1Cv8.lgd из текущей директории.
Журнал регистрации 1С — специальный механизм платформы 1С версий 8.2 и 8.3, который позволяет фиксировать работу пользователей с системой. С помощью журнала можно узнать, кто и когда изменял объекты в системе: справочники, документы, регистры и т.д. Ниже мы рассмотрим, как работать с этим механизмом, где хранятся файлы журнала регистрации 1С, каким образом происходит его настройка, как оптимизировать журнал регистрации и как можно произвести полную очистку данных.
Solution
- Firstly, we should try to verify the database with an embedded SQLite3 command. So, we need to have installed (v3.25.2 or later). The installation steps depend on the OS.
- We will use Docker instead of direct installation (this option is available only for x86_64 CPUs, for arm-based boards you will need to install via the package manager of your OS).
- Stop the storagenode
- Make a backup of all the databases. They are located in the folder for your data storage. For example , where is the data folder you had specified in the option of the command for your storagenode, or in case of using the Windows GUI, in the option of the file.
- Check each database for errors. We will use as an example in this guide.
- Docker (replace with an absolute path to the databases location, or simple switch the current location to there)
docker run --rm -it --mount type=bind,source=${PWD},destination=/data sstc/sqlite3 find . -iname "*.db" -maxdepth 1 -print0 -exec sqlite3 '{}' 'PRAGMA integrity_check;' ';'
- Direct installation
-
Linux
sudo apt update && sudo apt install sqlite3 -y
- Windowshttps://www.sqlitetutorial.net/download-install-sqlite/
- Make sure that the version is v3.25.2 or later, otherwise the check will not work correctly.
sqlite3 --version
- perform the integrity check (perform for each database), for example for :
sqlite3 /path/to/storage/bandwidth.db "PRAGMA integrity_check;"
- Or check all databases with help of shell commands:
- bash (Linux)
find /path/to/storage/ -iname "*.db" -maxdepth 1 -print0 -exec sqlite3 '{}' 'PRAGMA integrity_check;' ';'
- PowerShell (Windows)
Get-ChildItem X:storagenodestorage*.db -File | %{$_.Name + " " + $(sqlite3.exe $_.FullName "PRAGMA integrity_check;")}
- bash (Linux)
-
- Docker (replace with an absolute path to the databases location, or simple switch the current location to there)
- If you see errors in the output, then the check did not pass. We will unload all uncorrupted data and then load it back. But this could sometimes fail, too. If no errors occur here, you can skip all the following steps and start the storagenode again.
-
If you were not lucky and the check failed, then please try to fix the corrupted database(s) as shown below.
-
Open a shell
-
Docker version of sqlite3. Open a shell Inside the container:
docker run --rm -it --mount type=bind,source=x:storagenodestorage,destination=/storage sstc/sqlite3 sh
Tip. You can use to restore your databases. It uses memory instead of disk and should take a lot less time than on HDD (you can read more about usage of with Docker in the Use tmpfs mounts guide or this forum comment). For Windows or MacOS you must increase the allocated RAM for the docker’s VM via Docker desktop application to fit a double size of the greatest corrupted database file in case of usage of .
- You could use your shell directly if you have sqlite3 installed. In that case, use the path to your storage instead of «/storage/» across this guide below.
- For Windows with local sqlite3 installed, we recommend to use a PowerShell to execute the commands below. Don’t forget to replace the «/storage/» folder with your local path to the folder where the databases are stored. If the executable is not in the system variable PATH, then you should specify the full path to it or run from the location of the executable.
-
-
Now run the following commands in the shell. You need to repeat steps 9 to 14 for each corrupted database:
cp /storage/bandwidth.db /storage/bandwidth.db.baksqlite3 /storage/bandwidth.db
-
You will see a prompt from . Run this SQL script:
.mode insert.output /storage/dump_all.sql.dump.exit
-
We will edit the SQL file
-
Linux or docker version:
cat /storage/dump_all.sql | grep -v TRANSACTION | grep -v ROLLBACK | grep -v COMMIT >/storage/dump_all_notrans.sql
- PowerShell (Windows) with a local sqlite3 version:
Get-Content dump_all.sql | Select-String -NotMatch TRANSACTION | Select-String -NotMatch ROLLBACK | Select-String -NotMatch COMMIT | Set-Content -Encoding utf8 dump_all_notrans.sql
-
-
Remove the corrupted database (make sure that you have a backup!)
rm /storage/bandwidth.db
-
Now we will load the unloaded data into the new database
sqlite3 /storage/bandwidth.db ".read /storage/dump_all_notrans.sql"
-
Check that the new database ( in our example) has a size larger than 0:
-
Linux or docker version
ls -l /storage/bandwidth.db
- PowerShell (Windows) with a local sqlite3 version:
ls /storage/bandwidth.db
-
-
Exit from the container (skip this step, if you use a directly installed sqlite3)
exit
-
If you are lucky and all corrupted databases are fixed, then you can start the storagenode again.
( 1 оценка, среднее 5 из 5 )
Содержание:
1. Где хранится информация о событиях в информационной базе 1С Предприятия?
2. Очистка временных файлов и подключение команды ClearCache
3. Причины ошибки в журнале регистрации 1С 8.3 при открытии
1. Где хранится информация о событиях в информационной базе 1С Предприятия?
Информация о произошедших событиях хранится в информационной базе 1С Предприятия (ИБ). Ошибки, фоновые, регламентные задания, действия пользователей записываются в журнал регистрации 1С 8.3 (ЖР). С течением времени количество записей в журнал регистрации 1С 8.3 растет, т.к. в него записывается каждая произведенная операция (чем больше база, количество пользователей, регламентных заданий, тем быстрее будет расти журнал регистрации 1С 8.3).
Перед любыми манипуляциями с журналом регистрации обязательно нужно сохранить файл, в котором он хранится.
ЖР хранится вне информационной базы и имеет два вида: старый и новый. В случае использования нового формата *.lgd нужно удалять файл 1С полностью и потерять записи ЖР, так как все данные хранятся в одном документе. Рекомендуется использовать старый формат *.lgf – для контроля, разделения по периодам и своевременного удаления устаревших данных.
В некоторых случаях антивирусные программы влияют на ошибки при открытии журнала регистрации, поэтому их необходимо отключить.
2. Очистка временных файлов и подключение команды ClearCache
Следующим шагом будет очистка временных файлов в папке temp, и включение команды ClearCache в настройках подключения базы.
Если база файловая и расположена на локальном диске, то стоит проверить управление квотами и увеличить место для записей.
3. Причины ошибки в журнале регистрации 1С 8.3 при открытии
Если возникла ошибка в журнале регистрации при открытии (или другие ошибки, связанные с sqlite):
sqlite3_step failed: database disk image is malformed
db: C:bd1Cv8Log1Cv8.lgd
…то ее причиной могут быть повреждения данных в файле ЖР.
17:14.504002-0,EXCP,0,process=rmngr,Exception=EventLogException,Descr=’sqlite3_exec failed: database disk image is malformed
db: C:Program Files1cv8srvinforeg_154150b80b42-24a3-4f33-8508-5672acb806211Cv8Log1Cv8.lgd sql: PRAGMA journal_mode = OFF’
Для ее устранения необходимо скачать утилиту командной строки sqlite. В первую очередь нужно остановить службу «Агент сервера 1С» (предварительно попросить всех пользователей завершить работу, т.к. сеансы автоматически завершатся, и может произойти потеря данных).
Далее копируем поврежденный файл 1Cv8.lgd в отдельную папку (например, «C:Log») и распаковываем в нее скачанный архив с утилитой командной строки sqlite.
В командной строке переходим в «C:Log» и выполняем команду: sqlite3 1Cv8.lgd .dump >> backup.sql .
В текстовом редакторе открываем файл backup.sql и заменяем последнюю строку «ROLLBACK;» на «COMMIT;», переименовываем ранее скопированный файл «1Сv8.lgd» в «1Cv8-orig.lgd».
Далее выполняем команду: sqlite3 1Cv8.lgd < backup.sql.
Открываем ранее скопированный файл «1Сv8.lgd» в конфигураторе новой чистой файловой базы, проверяем целостность ЖР.
На последнем этапе заменяем оригинальный файл скопированным в исходной папке.
Специалист компании ООО «Кодерлайн»
Шашков Дмитрий Геннадьевич
Если вашу 1С уже кто-то обслуживает — предложу условия лучше!
- Профессионально — опыт 8 лет
- 137 выполненных проектов
- Работаю по договору
- Качественно и быстро
Даже в выходные
Цена решения проблемы ~1000р. срок ~1 час
Но чтобы дать конечную оценку, надо смотреть и уточнять детали… позвоните обсудим.
Обычно порядок работ следующий: приезжаю или подключаюсь удаленно, смотрю, даю оценку работ, устраивает — делаю.
Работаю на результат
Мои услуги
- Решение когда ошибка формата файла журнала регистрации 1С 8.3
- Продажа и настройка 1С:Предприятие «под ключ»
- Загрузка товаров в 1С из Excel, dbf, xml, txt и т.д.
- Обучение — курсы по работе с 1С
- Обновление 1С (7.7, 8.1, 8.2 и 8.3)
- Исправление и восстановление баз 1С
- Сброс забытых паролей
- Программирование в 1С — любые задачи
- Гарантия конфиденциальности!
Работаю с конфигурациями 1С: Управление торговлей, Розница, УНФ, Бухгалтерия. А так же отраслевыми конфигурациями Рарус Альфа-авто (версии 3, 4, 5, 6) и 1С Автосервис.
Цены на 1С
Наименование услуги | Стоимость |
---|---|
Ошибка формата файла журнала регистрации 1С 8.3 | от 1000 руб. |
Настройка сети и VРN (только для Zyхеl и Мikrоtik) | от 3000 руб. |
Помощь в решении задачи | от 300 руб. |
Настройка 1С | от 800 руб. |
Обучение 1С (план обучения) |
по договору |
Торговое оборудование |
|
Настройка ЕГАИС и онлайн-касс | от 800 руб. |
Подключение сканера штрих-кода, эквайринга к 1С | от 1000 руб. |
Настройка принтера этикеток, принтера чеков, дисплея покупателя, весов и т.д | от 600 руб. |
Обновление 1С |
|
При заказе обновления, проверка базы на ошибки | БЕСПЛАТНО |
Обновление типовой базы 1С | от 800 руб. |
Доработка 1C | |
Обрезать свернуть базу 1С (7.7, 8.3) | по договору |
Создание нового отчета 1С | от 600 руб. |
Разработка новой печатной формы 1С | от 500 руб. |
Рассылка SMS из 1С | по договору |
Загрузка товаров в 1С из Excel | по договору |
Настройка и сопровождение серверов, сетей и ПК | от 1200 руб.мес |
Сопровождение (обслуживание) 1С Предприятие | от 2400 руб.мес |
Продажа 1С Предприятие 8.3 (лицензия) | по договору (подробнее) |
Работы по настройке сервера 1С (удаленный доступ, VPN и т.д.) | по договору |
Цена часа работ | оценка по задачам |
Доверие клиентов
Сферы деятельности моих клиентов: торговля одеждой, строительными материалами, авто запчастями, услуги СТО (автосервис), торговля косметикой, мебелью, инструментами (для ремонта), электрикой, розничная торговля и т.д.
Мои клиенты, — в это компании в сфере торговли. Которые обращаются по оперативным работам в 1С и когда ошибка формата файла журнала регистрации 1С 8.3.