.DB-WAL

Plik DB-WAL

SQLite Write-Ahead Log
Zadaj pytanie
SZYBKA ODPOWIEDŹ

Plik .db-wal to SQLite Write-Ahead Log - tymczasowy plik pomocniczy (sidecar), który przechowuje najnowsze zatwierdzone zmiany dla bazy danych SQLite, zanim zostaną one zapisane z powrotem w głównym pliku .db. Aby go odczytać, należy otworzyć główną bazę danych w DB Browser for SQLite, przechowując plik .db-wal w tym samym folderze; SQLite odczytuje je automatycznie razem. Głównym problemem jest usunięcie: skasowanie pliku .db-wal, gdy baza danych jest w użyciu lub po awarii, powoduje utratę ostatnich danych.

Deweloper: D. Richard Hipp / SQLite Development Team (public domain) Kategoria: Pliki baz danych Otwarty standard MIME: application/octet-stream
OTWIERA SIĘ NA Windows macOS Linux
Powiązane: .DB · .DBF · .ACCDB · .SQL

Na tej stronie

Zindeksowano 19k+ rozszerzeń
Ostatnia weryfikacja Jul 25, 2026

Nie wiesz, co to za plik?

Przeciągnij dowolny plik do naszego identyfikatora - odczytujemy tylko pierwsze bajty, aby nazwać format.

Zidentyfikuj plik

Co to jest format pliku DB-WAL?

Pliki .db-wal są używane przez silnik bazy danych SQLite (od wersji 3.7.0, wydanej w lipcu 2010 r.) w trybie kronikowania WAL (Write-Ahead Logging).

Zawartość plików DB-WAL

Pliki z rozszerzeniem .db-wal zawierają dane dziennika zapisu z wyprzedzeniem dla powiązanej bazy danych SQLite. Takie pliki są tworzone i używane, gdy baza danych jest otwarta i aktywnie modyfikowana. Plik .db-wal przechowuje zatwierdzone zmiany bazy danych - kompletne strony bazy danych - które nie zostały jeszcze zapisane („checkpointed”) z powrotem do głównego pliku .db. To podejście typu write-ahead jest szybsze niż bezpośrednie modyfikowanie stron bazy danych w miejscu i zapewnia trwałość: w przypadku nagłej awarii zasilania lub awarii systemu, SQLite może odtworzyć WAL, aby odzyskać wszystkie zatwierdzone transakcje.

Każdy plik .db-wal zaczyna się od 32-bajtowego nagłówka zawierającego 4-bajtową magiczną liczbę (0x377f0682 dla sum kontrolnych little-endian, 0x377f0683 dla big-endian), wartości soli (salt) oraz skumulowaną sumę kontrolną. Treść składa się z ramek: 24-bajtowego nagłówka ramki oraz jednej pełnej strony bazy danych na każdą ramkę. Wartości soli w nagłówku unieważniają nieaktualne ramki po punkcie kontrolnym, zapobiegając przypadkowym powtórzeniom operacji.

Korzystanie z plików DB-WAL

Zarządzanie dziennikiem .db-wal jest w pełni zautomatyzowane przez silnik SQLite. Towarzyszący plik .db-shm (indeks pamięci współdzielonej) jest zawsze obecny obok WAL, gdy baza danych jest otwarta. Plik .db-wal znika automatycznie po zapisaniu wszystkich zmian w punkcie kontrolnym - domyślny próg wal_autocheckpoint wynosi 1000 stron. Mechanizm WAL jest powszechnie stosowany w urządzeniach mobilnych; bazy danych w aplikacjach Android i iOS często działają w trybie WAL w celu poprawy współbieżności i wydajności zapisu.

Bezpieczeństwo

RYZYKO: LOW

Plik .db-wal to dane bierne, a nie kod wykonywalny, więc nie może uruchomić się samodzielnie. Rzeczywiste ryzyko ma charakter operacyjny, a nie związany ze złośliwym oprogramowaniem: (1) usunięcie lub utrata -wal, gdy baza danych jest otwarta lub po awarii, powoduje odrzucenie najnowszych zatwierdzonych transakcji - należy tworzyć kopie zapasowe -db, -wal i -shm razem; (2) WAL bazy danych aplikacji może zawierać wrażliwe, jeszcze nieprzetworzone dane (wiadomości, tokeny, historię), więc należy traktować go jako poufny. Jeśli nadrzędna baza danych jest zaszyfrowana (SQLCipher/SEE), plik -wal również jest zaszyfrowany.

Szczegóły formatu

w pigułce
PEŁNA NAZWASQLite Write-Ahead Logznany również jako WAL file, SQLite WAL
DEWELOPERD. Richard Hipp / SQLite Development Team (public domain)od SQLite 3.7.0, July 2010 (WAL journaling mode)
TYP MIMEapplication/octet-stream
TYPBinarny plik pomocniczy dziennika zapisu z wyprzedzeniem dla bazy danych SQLite 3 (dziennik transakcji)
STANDARDOtwarty · bezpłatny
MAGICZNE BAJTY · SYGNATURA PLIKU
OFFSET
00010203
HEX
377F0682
ASCII
7···
32-bajtowy nagłówek WAL zaczyna się od 4-bajtowej magicznej liczby: 0x377f0682, jeśli plik używa natywnych sum kontrolnych little-endian, lub 0x377f0683 dla big-endian. NIE jest to nagłówek „SQLite format 3” głównej bazy danych - plik -wal jest osobnym dziennikiem, a nie bazą danych. Nazwa pliku to zawsze nazwa bazy danych z dołączonym „-wal” (np. mydata.db-wal).

Programy otwierające pliki DB-WAL

Windows2 apps
DB Browser for SQLite Open-source Użyj opcji „Write Changes” / „Checkpoint”, aby plik -wal został scalony przed skopiowaniem lub utworzeniem kopii zapasowej bazy danych.
SQLite (sqlite3 CLI) Open-source Uruchom „sqlite3 mydata.db” z plikiem -wal obok niego; punkt kontrolny („PRAGMA wal_checkpoint(TRUNCATE);”) wciela dziennik do głównej bazy danych.
macOS2 apps
DB Browser for SQLite Open-source Użyj opcji „Write Changes” / „Checkpoint”, aby plik -wal został scalony przed skopiowaniem lub utworzeniem kopii zapasowej bazy danych.
SQLite (sqlite3 CLI) Open-source Uruchom „sqlite3 mydata.db” z plikiem -wal obok niego; punkt kontrolny („PRAGMA wal_checkpoint(TRUNCATE);”) wciela dziennik do głównej bazy danych.
Linux2 apps
SQLite (sqlite3 CLI) Open-source Uruchom „sqlite3 mydata.db” z plikiem -wal obok niego; punkt kontrolny („PRAGMA wal_checkpoint(TRUNCATE);”) wciela dziennik do głównej bazy danych.
DB Browser for SQLite Open-source Użyj opcji „Write Changes” / „Checkpoint”, aby plik -wal został scalony przed skopiowaniem lub utworzeniem kopii zapasowej bazy danych.

Szczegóły techniczne

specyfikacja
Magiczne bajty0x377f0682 pod offsetem 0 (sumy kontrolne little-endian) lub 0x377f0683 (sumy kontrolne big-endian)
Rozmiar nagłówka32 bajty zawierające magiczną liczbę, wersję formatu pliku, rozmiar strony, sekwencję punktu kontrolnego, parę soli i sumę kontrolną
Struktura ramki24-bajtowy nagłówek ramki + jedna pełna strona bazy danych na ramkę
Rozmiar stronyZgodny z rozmiarem strony nadrzędnej bazy danych SQLite (zazwyczaj 4096 bajtów)
Suma kontrolnaSkumulowana 8-bajtowa suma kontrolna (dwa 32-bitowe słowa) w każdym nagłówku ramki i w nagłówku WAL
Unieważnianie soląDwie 32-bitowe wartości soli są losowane po każdym punkcie kontrolnym, co unieważnia wszelkie nieaktualne ramki
Plik towarzyszącyZawsze sparowany z plikiem .db-shm (indeks pamięci współdzielonej), gdy baza danych jest otwarta
Konwencja nazewnictwaNazwa pliku bazy danych z dołączonym przyrostkiem -wal (np. mydata.db-wal)
AktywacjaTworzony tylko wtedy, gdy baza danych jest ustawiona w tryb WAL (PRAGMA journal_mode=WAL)
Automatyczny punkt kontrolnyDomyślny wal_autocheckpoint przy 1000 stronach ogranicza maksymalny wzrost WAL przed wykonaniem punktu kontrolnego
Pole wersji formatuNagłówek WAL koduje wersję biblioteki SQLite jako 3007000 (SQLite 3.7.0, lipiec 2010)
SzyfrowanieBrak domyślnie; szyfrowany, gdy baza danych korzysta z rozszerzenia SEE lub SQLCipher
WydanoSQLite 3.7.0, July 2010 (WAL journaling mode)
Najnowsza wersjaWAL file format magic 0x377f0682 (little-endian) / 0x377f0683 (big-endian)
Otwarty standardTak · bezpłatny (royalty-free)
Specyfikacjawww.sqlite.org

Konwersje DB-WAL

Pytania i odpowiedzi społeczności

pytania użytkowników
Zadaj szybkie pytanie
Uzyskaj pomoc od osób pracujących z plikami DB-WAL. Bądź precyzyjny - podaj system i wersję oprogramowania.
Konto nie jest wymagane · odpowiedzi zazwyczaj w ciągu doby

Brak pytań - bądź pierwszą osobą, która zapyta o pliki DB-WAL.

Najczęściej zadawane pytania

Co to jest plik .db-wal i czy mogę go usunąć?
Jest to SQLite Write-Ahead Log przechowujący najnowsze zatwierdzone zmiany w bazie danych. Jeśli baza danych została zamknięta prawidłowo, plik -wal został przetworzony (checkpointed) i jego usunięcie jest bezpieczne; jeśli aplikacja korzysta z bazy lub nastąpiła awaria, usunięcie -wal może spowodować utratę ostatnich danych. W razie wątpliwości należy go zostawić.
Jak otworzyć plik .db-wal?
Nie otwiera się go samodzielnie - należy otworzyć główną bazę danych (plik .db/.sqlite obok niego) w DB Browser for SQLite lub za pomocą narzędzia sqlite3, trzymając plik -wal w tym samym folderze. SQLite automatycznie odczyta dziennik i wyświetli aktualne dane.
Dlaczego po skopiowaniu bazy danych SQLite brakuje najnowszych danych?
Prawdopodobnie skopiowano tylko plik .db, a nie -wal (i -shm). Najnowsze zatwierdzone zmiany znajdują się w -wal do momentu wykonania punktu kontrolnego. Należy skopiować wszystkie trzy pliki razem lub najpierw wykonać punkt kontrolny, aby wszystko znalazło się w pojedynczym pliku .db.
Jaka jest różnica między .db-wal a .db-shm?
Plik -wal to właściwy dziennik zapisu z wyprzedzeniem zawierający zmienione strony. Plik -shm to mały indeks pamięci współdzielonej, który pomaga wielu połączeniom znaleźć najnowszą wersję każdej strony w -wal. Oba są tymczasowymi plikami pomocniczymi głównej bazy danych.
Czy .db-wal to plik tylko dla systemu Android?
Nie. Nazwa bazy danych w naszym katalogu wspomina o Android, ponieważ wiele aplikacji na ten system korzysta z SQLite, ale WAL to ogólna funkcja SQLite używana również w iOS, Windows, macOS i Linux - przeglądarki, Mail, Photos i niezliczone aplikacje tworzą pliki -wal.
Jak połączyć .db-wal z powrotem z bazą danych?
Otwórz bazę danych i uruchom „PRAGMA wal_checkpoint(TRUNCATE);” w powłoce sqlite3 lub DB Browser, albo po prostu zamknij bazę danych w prawidłowy sposób. SQLite zapisze strony z dziennika do głównego pliku i opróżni -wal.

Źródła

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

Odkrywaj dalej

w całej bazie danych

Najpopularniejsze rozszerzenia w tym tygodniu

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

Powiązane rozszerzenia

.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

Darmowe narzędzia do plików

Identyfikator plików i konwerter obrazów w przeglądarce - wszystko działa na Twoim urządzeniu.

Otwórz przybornik

Przeglądaj rozszerzenia plików A-Z