.DB-WAL

DB-WAL Datei

SQLite Write-Ahead Log
Frage stellen
SCHNELLE ANTWORT

Eine .db-wal-Datei ist ein SQLite Write-Ahead Log - eine temporäre Begleitdatei, die die neuesten bestätigten Änderungen für eine SQLite-Datenbank enthält, bevor diese in die Hauptdatei .db zurückgeschrieben werden. Um sie zu lesen, öffnen Sie die Hauptdatenbank im DB Browser for SQLite und lassen Sie die .db-wal im selben Ordner; SQLite liest beide automatisch zusammen. Das Hauptproblem ist das Löschen: Das Entfernen einer .db-wal, während die Datenbank in Gebrauch ist oder nach einem Absturz, verwirft aktuelle Daten.

Entwickler: D. Richard Hipp / SQLite Development Team (public domain) Kategorie: Datenbanken Offener Standard MIME: application/octet-stream
VERFÜGBAR AUF Windows macOS Linux
Verwandt: .DB · .DBF · .ACCDB · .SQL

Auf dieser Seite

19k+ Erweiterungen indexiert
Zuletzt geprüft Jul 25, 2026

Nicht sicher, was Ihre Datei ist?

Legen Sie eine beliebige Datei in unseren Identifikator - wir lesen nur die ersten Bytes, um das Format zu benennen.

Datei identifizieren

Was ist das DB-WAL-Dateiformat?

.db-wal-Dateien werden von der SQLite-Datenbank-Engine (seit Version 3.7.0, veröffentlicht im Juli 2010) im WAL-Journaling-Modus (Write-Ahead Logging) verwendet.

Inhalt von DB-WAL-Dateien

Dateien mit der Erweiterung .db-wal enthalten Write-Ahead-Log-Daten für eine zugehörige SQLite-Datenbank. Solche Dateien werden erstellt und verwendet, während eine Datenbank geöffnet ist und aktiv geändert wird. Eine .db-wal-Datei speichert bestätigte Datenbankänderungen - vollständige Datenbankseiten -, die noch nicht in die Hauptdatei .db zurückgeschrieben („checkpointed“) wurden. Dieser Write-Ahead-Ansatz ist schneller als das direkte Ändern von Datenbankseiten an Ort und Stelle und gewährleistet Beständigkeit: Im Falle eines plötzlichen Stromausfalls oder Systemabsturzes kann SQLite das WAL erneut abspielen, um alle bestätigten Transaktionen wiederherzustellen.

Jede .db-wal-Datei beginnt mit einem 32-Byte-Header, der eine 4-Byte-Magic-Number enthält (0x377f0682 für Little-Endian-Prüfsummen, 0x377f0683 für Big-Endian), Salt-Werte und eine kumulative Prüfsumme. Der Hauptteil besteht aus Frames: einem 24-Byte-Frame-Header plus jeweils einer vollständigen Datenbankseite. Salt-Werte im Header machen veraltete Frames nach einem Checkpoint ungültig und verhindern so versehentliche Wiederholungen.

Verwendung von DB-WAL-Dateien

Die Verwaltung des .db-wal-Logs erfolgt vollautomatisch durch die SQLite-Engine. Eine begleitende .db-shm-Datei (Shared-Memory-Index) ist immer zusammen mit dem WAL vorhanden, solange die Datenbank geöffnet ist. Die .db-wal-Datei verschwindet automatisch, sobald alle Änderungen per Checkpoint übertragen wurden - der Standard-Schwellenwert für wal_autocheckpoint liegt bei 1000 Seiten. Der zugrunde liegende WAL-Mechanismus ist auf mobilen Geräten weit verbreitet; Datenbanken in Android- und iOS-Apps arbeiten häufig im WAL-Modus für verbesserte Nebenläufigkeit und Schreibleistung.

Sicherheit

RISIKO: LOW

Eine .db-wal besteht aus inerten Daten, nicht aus ausführbarem Code, und kann daher nicht von selbst ausgeführt werden. Die echten Risiken sind betrieblicher Natur, keine Malware: (1) Das Löschen oder Verlieren des -wal, während die Datenbank geöffnet ist oder nach einem Absturz, verwirft die neuesten bestätigten Transaktionen - sichern Sie -db, -wal und -shm zusammen; (2) das WAL einer App-Datenbank kann sensible, noch nicht per Checkpoint verarbeitete Daten enthalten (Nachrichten, Token, Verlauf), behandeln Sie es daher vertraulich. Wenn die übergeordnete Datenbank verschlüsselt ist (SQLCipher/SEE), ist auch das -wal verschlüsselt.

Formatdetails

kurz gefasst
VOLLSTÄNDIGER NAMESQLite Write-Ahead Logalias WAL file, SQLite WAL
ENTWICKLERD. Richard Hipp / SQLite Development Team (public domain)seit SQLite 3.7.0, July 2010 (WAL journaling mode)
KATEGORIEDatenbanken
MIME TYPEapplication/octet-stream
TYPBinäre Write-Ahead-Log-Begleitdatei für eine SQLite 3-Datenbank (Transaktionsjournal)
STANDARDOffen · lizenzfrei
MAGIC BYTES · DATEISIGNATUR
OFFSET
00010203
HEX
377F0682
ASCII
7···
Der 32-Byte-WAL-Header beginnt mit einer 4-Byte-Magic-Number: 0x377f0682, wenn die Datei native Little-Endian-Prüfsummen verwendet, 0x377f0683 für Big-Endian. Dies ist NICHT der «SQLite format 3»-Header der Hauptdatenbank - die -wal-Datei ist ein separates Journal, keine Datenbank. Der Dateiname ist immer der Datenbankname mit angehängtem «-wal» (z. B. mydata.db-wal).

Programme zum Öffnen von DB-WAL-Dateien

Windows2 apps
DB Browser for SQLite Open Source Verwenden Sie «Änderungen schreiben» / «Checkpoint», damit das -wal zusammengeführt wird, bevor Sie die Datenbank kopieren oder sichern.
SQLite (sqlite3 CLI) Open Source Führen Sie «sqlite3 mydata.db» mit dem -wal daneben aus; ein Checkpoint («PRAGMA wal_checkpoint(TRUNCATE);») faltet das Log in die Hauptdatenbank ein.
macOS2 apps
DB Browser for SQLite Open Source Verwenden Sie «Änderungen schreiben» / «Checkpoint», damit das -wal zusammengeführt wird, bevor Sie die Datenbank kopieren oder sichern.
SQLite (sqlite3 CLI) Open Source Führen Sie «sqlite3 mydata.db» mit dem -wal daneben aus; ein Checkpoint («PRAGMA wal_checkpoint(TRUNCATE);») faltet das Log in die Hauptdatenbank ein.
Linux2 apps
SQLite (sqlite3 CLI) Open Source Führen Sie «sqlite3 mydata.db» mit dem -wal daneben aus; ein Checkpoint («PRAGMA wal_checkpoint(TRUNCATE);») faltet das Log in die Hauptdatenbank ein.
DB Browser for SQLite Open Source Verwenden Sie «Änderungen schreiben» / «Checkpoint», damit das -wal zusammengeführt wird, bevor Sie die Datenbank kopieren oder sichern.

Technische Details

technische Spezifikation
Magic Bytes0x377f0682 bei Offset 0 (Little-Endian-Prüfsummen) oder 0x377f0683 (Big-Endian-Prüfsummen)
Header-Größe32 Bytes, enthaltend Magic, Dateiformat-Version, Seitengröße, Checkpoint-Sequenz, Salt-Paar und Prüfsumme
Frame-Struktur24-Byte-Frame-Header + eine vollständige Datenbankseite pro Frame
SeitengrößeEntspricht der Seitengröße der übergeordneten SQLite-Datenbank (typischerweise 4096 Bytes)
PrüfsummeKumulative 8-Byte-Prüfsumme (zwei 32-Bit-Wörter) in jedem Frame-Header und im WAL-Header
Salt-InvalidierungZwei 32-Bit-Salt-Werte werden nach jedem Checkpoint randomisiert, wodurch veraltete Frames ungültig werden
BegleitdateiImmer gepaart mit einer .db-shm-Datei (Shared-Memory-Index), solange die Datenbank geöffnet ist
NamenskonventionDatenbank-Dateiname mit angehängtem -wal (z. B. mydata.db-wal)
AktivierungWird nur erstellt, wenn die Datenbank in den WAL-Modus versetzt wurde (PRAGMA journal_mode=WAL)
Auto-CheckpointStandardmäßiger wal_autocheckpoint bei 1000 Seiten begrenzt das maximale WAL-Wachstum vor dem Checkpointing
Format-VersionsfeldDer WAL-Header kodiert die SQLite-Bibliotheksversion als 3007000 (SQLite 3.7.0, Juli 2010)
VerschlüsselungStandardmäßig keine; verschlüsselt, wenn die Datenbank die SEE- oder SQLCipher-Erweiterung verwendet
VeröffentlichtSQLite 3.7.0, July 2010 (WAL journaling mode)
Neueste VersionWAL file format magic 0x377f0682 (little-endian) / 0x377f0683 (big-endian)
Offener StandardJa · lizenzgebührenfrei
Spezifikationwww.sqlite.org

DB-WAL-Konvertierungen

Community Q&A

von Nutzern gefragt
Schnelle Frage stellen
Holen Sie sich Hilfe von Menschen, die mit DB-WAL-Dateien arbeiten. Seien Sie konkret - geben Sie Ihr System und die Softwareversion an.
Kein Konto erforderlich · Antworten meist innerhalb eines Tages

Noch keine Fragen - stellen Sie die erste Frage zu DB-WAL-Dateien.

Häufig gestellte Fragen

Was ist eine .db-wal-Datei und kann ich sie löschen?
Es handelt sich um ein SQLite Write-Ahead Log, das die neuesten bestätigten Änderungen der Datenbank enthält. Wenn die Datenbank sauber geschlossen wurde, wurde das -wal per Checkpoint verarbeitet und das Löschen ist sicher; wenn eine App die Datenbank verwendet oder sie abgestürzt ist, kann das Löschen des -wal zu Datenverlust führen. Im Zweifelsfall lassen Sie sie stehen.
Wie öffne ich eine .db-wal-Datei?
Sie öffnen sie nicht einzeln - öffnen Sie die Hauptdatenbank (die .db/.sqlite daneben) im DB Browser for SQLite oder mit dem sqlite3-Tool und lassen Sie das -wal im selben Ordner. SQLite liest das Log automatisch und zeigt die aktuellen Daten an.
Warum fehlen die neuesten Daten, nachdem ich eine SQLite-Datenbank kopiert habe?
Wahrscheinlich haben Sie nur die .db und nicht das -wal (und -shm) kopiert. Die neuesten bestätigten Änderungen befinden sich bis zu einem Checkpoint im -wal. Kopieren Sie entweder alle drei Dateien zusammen oder führen Sie zuerst einen Checkpoint aus, damit alles in der einzelnen .db enthalten ist.
Was ist der Unterschied zwischen .db-wal und .db-shm?
Das -wal ist das eigentliche Write-Ahead Log der geänderten Seiten. Das -shm ist ein kleiner Shared-Memory-Index, der mehreren Verbindungen hilft, die neueste Version jeder Seite im -wal zu finden. Beide sind temporäre Begleitdateien zur Hauptdatenbank.
Ist .db-wal eine reine Android-Datei?
Nein. Der Datenbankname in unserem Katalog erwähnt Android, weil viele Android-Apps SQLite verwenden, aber WAL ist eine allgemeine SQLite-Funktion, die auch unter iOS, Windows, macOS und Linux verwendet wird - Browser, Mail, Fotos und unzählige Apps erstellen -wal-Dateien.
Wie führe ich ein .db-wal wieder mit der Datenbank zusammen?
Öffnen Sie die Datenbank und führen Sie «PRAGMA wal_checkpoint(TRUNCATE);» in der sqlite3-Shell oder im DB Browser aus, oder schließen Sie die Datenbank einfach sauber. SQLite schreibt die protokollierten Seiten in die Hauptdatei und leert das -wal.

Quellen

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

Weiter entdecken

in der Datenbank

Top-Erweiterungen dieser Woche

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

Verwandte Erweiterungen

.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

Kostenlose Datei-Tools

Ein Browser-Dateiidentifikator und Bildkonverter - alles läuft auf Ihrem Gerät.

Toolbox öffnen

Dateierweiterungen A-Z durchsuchen