.DB-WAL

Файл DB-WAL

SQLite Write-Ahead Log
Задать вопрос
БЫСТРЫЙ ОТВЕТ

Файл .db-wal - это журнал опережающей записи (Write-Ahead Log) SQLite, временный вспомогательный файл, содержащий последние подтвержденные изменения базы данных SQLite до их переноса в основной файл .db. Чтобы прочитать его, откройте основную базу данных в DB Browser for SQLite, удерживая .db-wal в той же папке; SQLite считывает их вместе автоматически. Главная проблема - удаление: удаление .db-wal во время работы базы данных или после сбоя приводит к потере последних данных.

Разработчик: D. Richard Hipp / SQLite Development Team (public domain) Категория: Файлы баз данных Открыть стандартное MIME: application/octet-stream
ОТКРЫВАЕТСЯ НА Windows macOS Linux
Связанные: .DB · .DBF · .ACCDB · .SQL

На этой странице

Проиндексировано расширений: 19k+
Последняя проверка: Jul 25, 2026

Не знаете, что это за файл?

Перетащите любой файл в наш идентификатор - мы прочитаем первые байты, чтобы определить формат.

Идентифицировать файл

Что такое формат файла DB-WAL?

Файлы .db-wal используются движком базы данных SQLite (начиная с версии 3.7.0, выпущенной в июле 2010 года) в режиме журналирования WAL (Write-Ahead Logging).

Содержимое файлов DB-WAL

Файлы с расширением .db-wal содержат данные журнала опережающей записи для парной базы данных SQLite. Такие файлы создаются и используются, пока база данных открыта и активно изменяется. Файл .db-wal хранит подтвержденные изменения базы данных - полные страницы базы данных - которые еще не были записаны («зафиксированы» или checkpointed) обратно в основной файл .db. Этот подход с опережающей записью быстрее, чем прямое изменение страниц базы данных на месте, и обеспечивает надежность: в случае внезапного отключения питания или сбоя системы SQLite может воспроизвести WAL для восстановления всех подтвержденных транзакций.

Каждый файл .db-wal начинается с 32-байтового заголовка, содержащего 4-байтовое магическое число (0x377f0682 для контрольных сумм little-endian, 0x377f0683 для big-endian), значения соли (salt) и кумулятивную контрольную сумму. Тело состоит из кадров (frames): 24-байтовый заголовок кадра плюс одна полная страница базы данных в каждом. Значения соли в заголовке аннулируют устаревшие кадры после контрольной точки, предотвращая случайные повторы.

Использование файлов DB-WAL

Управление журналом .db-wal полностью автоматизировано движком SQLite. Сопутствующий файл .db-shm (индекс разделяемой памяти) всегда присутствует рядом с WAL, пока база данных открыта. Файл .db-wal автоматически исчезает, как только все изменения проходят контрольную точку - по умолчанию порог wal_autocheckpoint составляет 1000 страниц. Базовый механизм WAL широко используется на мобильных устройствах; базы данных в приложениях Android и iOS часто работают в режиме WAL для улучшения параллелизма и производительности записи.

Безопасность и защита

РИСК: LOW

Файл .db-wal содержит инертные данные, а не исполняемый код, поэтому он не может запуститься сам по себе. Реальные риски носят операционный характер, а не вредоносный: (1) удаление или потеря -wal при открытой базе данных или после сбоя приводит к отбрасыванию новейших подтвержденных транзакций - делайте резервные копии -db, -wal и -shm вместе; (2) WAL базы данных приложения может содержать конфиденциальные, еще не перенесенные данные (сообщения, токены, историю), поэтому относитесь к нему как к конфиденциальному. Если родительская база данных зашифрована (SQLCipher/SEE), -wal также зашифрован.

Детали формата

в двух словах
ПОЛНОЕ НАЗВАНИЕSQLite Write-Ahead Logтакже известен как WAL file, SQLite WAL
РАЗРАБОТЧИКD. Richard Hipp / SQLite Development Team (public domain)с SQLite 3.7.0, July 2010 (WAL journaling mode)
MIME-ТИПapplication/octet-stream
ТИПБинарный вспомогательный журнал опережающей записи для базы данных SQLite 3 (журнал транзакций)
СТАНДАРТОткрытый · без роялти
СВЯЗАННЫЕ.db.dbf.accdb.sql
MAGIC BYTES · СИГНАТУРА ФАЙЛА
СМЕЩЕНИЕ
00010203
HEX
377F0682
ASCII
7···
32-байтовый заголовок WAL начинается с 4-байтового магического числа: 0x377f0682, если файл использует нативные контрольные суммы little-endian, или 0x377f0683 для big-endian. Это НЕ заголовок «SQLite format 3» основной базы данных - файл -wal является отдельным журналом, а не базой данных. Имя файла всегда представляет собой имя базы данных с добавлением «-wal» (например, mydata.db-wal).

Программы, открывающие файлы DB-WAL

Windows2 apps
DB Browser for SQLite Открытый код Используйте «Записать изменения» / «Контрольная точка», чтобы -wal был объединен перед копированием или резервным копированием базы данных.
SQLite (sqlite3 CLI) Открытый код Запустите «sqlite3 mydata.db» с файлом -wal рядом; контрольная точка («PRAGMA wal_checkpoint(TRUNCATE);») перенесет журнал в основную базу данных.
macOS2 apps
DB Browser for SQLite Открытый код Используйте «Записать изменения» / «Контрольная точка», чтобы -wal был объединен перед копированием или резервным копированием базы данных.
SQLite (sqlite3 CLI) Открытый код Запустите «sqlite3 mydata.db» с файлом -wal рядом; контрольная точка («PRAGMA wal_checkpoint(TRUNCATE);») перенесет журнал в основную базу данных.
Linux2 apps
SQLite (sqlite3 CLI) Открытый код Запустите «sqlite3 mydata.db» с файлом -wal рядом; контрольная точка («PRAGMA wal_checkpoint(TRUNCATE);») перенесет журнал в основную базу данных.
DB Browser for SQLite Открытый код Используйте «Записать изменения» / «Контрольная точка», чтобы -wal был объединен перед копированием или резервным копированием базы данных.

Технические подробности

глубокая спецификация
Магические байты0x377f0682 по смещению 0 (контрольные суммы little-endian) или 0x377f0683 (big-endian)
Размер заголовка32 байта, содержащие магическое число, версию формата файла, размер страницы, последовательность контрольных точек, пару соли и контрольную сумму
Структура кадра24-байтовый заголовок кадра + одна полная страница базы данных на кадр
Размер страницыСоответствует размеру страницы родительской базы данных SQLite (обычно 4096 байт)
Контрольная суммаКумулятивная 8-байтовая контрольная сумма (два 32-битных слова) в каждом заголовке кадра и в заголовке WAL
Аннулирование сольюДва 32-битных значения соли рандомизируются после каждой контрольной точки, аннулируя любые устаревшие кадры
Сопутствующий файлВсегда в паре с файлом .db-shm (индекс разделяемой памяти), пока база данных открыта
Соглашение об именованииИмя файла базы данных с добавлением -wal (например, mydata.db-wal)
АктивацияСоздается только тогда, когда база данных переведена в режим WAL (PRAGMA journal_mode=WAL)
Автоматическая контрольная точкаЗначение wal_autocheckpoint по умолчанию в 1000 страниц ограничивает максимальный рост WAL до сброса данных
Поле версии форматаЗаголовок WAL кодирует версию библиотеки SQLite как 3007000 (SQLite 3.7.0, июль 2010)
ШифрованиеОтсутствует по умолчанию; зашифровано, если база данных использует расширение SEE или SQLCipher
ВыпущенSQLite 3.7.0, July 2010 (WAL journaling mode)
Последняя версияWAL file format magic 0x377f0682 (little-endian) / 0x377f0683 (big-endian)
Открыть стандартноеДа · без роялти
Спецификацияwww.sqlite.org

Конвертации DB-WAL

Вопросы и ответы сообщества

спрошено пользователями
Задать быстрый вопрос
Получите помощь от людей, работающих с файлами DB-WAL. Будьте конкретны - укажите вашу систему и версию ПО.
Аккаунт не нужен · ответы обычно в течение дня

Вопросов пока нет - станьте первым, кто спросит о файлах DB-WAL.

Часто задаваемые вопросы

Что такое файл .db-wal и можно ли его удалить?
Это журнал опережающей записи SQLite, содержащий последние подтвержденные изменения базы данных. Если база данных была закрыта корректно, данные из -wal были перенесены в основной файл, и его удаление безопасно; если приложение использует базу данных или произошел сбой, удаление -wal может привести к потере последних данных. Если сомневаетесь - оставьте его.
Как открыть файл .db-wal?
Вы не открываете его отдельно - откройте основную базу данных (файл .db/.sqlite рядом с ним) в DB Browser for SQLite или с помощью инструмента sqlite3, сохраняя -wal в той же папке. SQLite автоматически прочитает журнал и покажет актуальные данные.
Почему после копирования базы данных SQLite отсутствуют последние данные?
Вероятно, вы скопировали только .db, но не -wal (и -shm). Последние подтвержденные изменения живут в -wal до прохождения контрольной точки. Либо копируйте все три файла вместе, либо сначала выполните контрольную точку (checkpoint), чтобы все данные оказались в одном .db.
В чем разница между .db-wal и .db-shm?
Файл -wal - это сам журнал опережающей записи измененных страниц. Файл -shm - это небольшой индекс в разделяемой памяти, который помогает нескольким соединениям находить последнюю версию каждой страницы в -wal. Оба являются временными вспомогательными файлами основной базы данных.
Является ли .db-wal файлом только для Android?
Нет. Имя базы данных в нашем каталоге упоминает Android, так как многие приложения Android используют SQLite, но WAL - это общая функция SQLite, используемая также в iOS, Windows, macOS и Linux - браузеры, Почта, Фото и бесчисленное количество приложений создают файлы -wal.
Как объединить .db-wal обратно с базой данных?
Откройте базу данных и выполните команду «PRAGMA wal_checkpoint(TRUNCATE);» в оболочке sqlite3 или DB Browser, либо просто корректно закройте базу данных. SQLite запишет залогированные страницы в основной файл и очистит -wal.

Ссылки

1SQLite - Write-Ahead Logging (WAL)www.sqlite.org
2SQLite - WAL File Formatwww.sqlite.org

Узнать больше

по всей базе данных

Популярные расширения на этой неделе

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.EXEWindows Executable (Portable Executable)
6.BINCD/DVD Disc Image (BIN/CUE)
7.NOMEDIAAndroid No-Media Marker File
8.MDMarkdown Document
9.TMPTemporary File
10.RPMSGRestricted Permission Message

Похожие расширения

.DBSQLite Database File
.DBFDatabase File (dBASE / xBase table)
.ACCDBMicrosoft Access Database (2007+)
.SQLSQL Script (Structured Query Language source / database dump)
.MDBMicrosoft Access Database (97-2003, Jet engine)
.FDBFirebird Database

Бесплатные инструменты для файлов

Идентификатор файлов и конвертер изображений в браузере - все работает на вашем устройстве.

Открыть инструменты

Обзор расширений файлов A-Z