.DB-JOURNAL

DB-JOURNAL ファイル

SQLite Rollback Journal
質問する
クイック回答

.db-journal ファイルは SQLite ロールバックジャーナルです。これは、書き込みトランザクション中に SQLite がデータベースの隣に作成する一時的なクラッシュリカバリ用サイドカーファイルであり、トランザクションがコミットされた瞬間に削除されます。アプリがトランザクションの途中でクラッシュし、ファイルが残された場合にのみ表示されます。アプリの実行中は削除しないでください。復旧するには、DB Browser for SQLite でメインの .db ファイルを開きます。SQLite がジャーナルを読み取り、不完全なトランザクションを自動的にロールバックしてファイルを削除します。

開発元: D. Richard Hipp / SQLite Development Team (public domain) カテゴリ: データベースファイル オープンスタンダード MIME: application/octet-stream
対応OS Windows macOS Linux
関連: .DB · .DBF · .ACCDB · .SQL

このページの内容

19k+ 個の拡張子を索引済み
最終確認日:Jul 11, 2026

ファイルの種類がわかりませんか?

ファイルを識別ツールにドロップしてください。最初の数バイトを読み取って形式を特定します。

ファイルを識別する

DB-JOURNAL ファイル形式とは?

拡張子 .db-journal を持つファイルには、トランザクション失敗時に SQLite データベースを復旧するために必要なページイメージが含まれています。これらは、データベースが保存されているのと同じディレクトリに SQLite によって作成される一時ファイルです。トランザクションが完了すると、SQLite は COMMIT または ROLLBACK 時にこれらを自動的に削除するため、通常は見えません。

拡張子 .db-journal を持つトランザクションロールバックジャーナルファイルのおかげで、データベースにおけるトランザクションの原子性を保証することが可能です。 トランザクションの途中でクラッシュしたデータベースデータを操作するアプリケーションは、操作を不完全なままにすることはありません。それらはトランザクション開始前の状態に戻されます。.db-journal ファイルは、以下の場合にディスク上に存在します:

  • 書き込みトランザクションの実行中(SQLite のデフォルトである DELETE ジャーナルモード)、
  • クラッシュによってトランザクションが中断されたとき(次の接続がデータベースを開くまで)、
  • データベースが排他的ロックモード(PRAGMA locking_mode=EXCLUSIVE)のとき(オフになるまで)。

SQLite は、データベース操作の整合性とセキュリティを確保するために、いくつかの異なる一時的なサイドカーファイルを使用する場合があります。.db-journal は古典的なロールバックジャーナルです。.db-wal と .db-shm は、より新しい WAL(Write-Ahead Log)モードにおいて同等の役割を果たします。

.db-journal ファイルの命名規則

ジャーナルファイルは、完全なデータベースファイル名に -journal を追加して命名されます。例えば、データベースが baza.db として保存されている場合、一時ファイルは baza.db-journal という名前になり、同じディレクトリに保存されます。一時ファイルは通常、ユーザーには見えません。クラッシュや停電が発生した場合、次にデータベースが開かれるまでジャーナルはディレクトリに残ります。その際、SQLite は «ホットジャーナル» を検出し、保存されたページイメージを再生してトランザクション前の状態を復元し、ジャーナルを自動的に削除します。

書き込みトランザクションの進行中に .db-journal ファイルを削除してはいけません。 削除するとデータベースが破損します。正常なシャットダウン後に .db-journal が残っている場合は、ほぼ間違いなく以前のクラッシュを示しています。SQLite は次回のオープン時に安全にリカバリを処理します。SQLite 3.7.0(2010年7月)で導入された WAL モード(PRAGMA journal_mode=WAL)では、.db-journal ファイルは一切使用されず、.db-wal ファイルがその役割を担います。最新のアプリケーションデータベースのほとんどは、読み取りの並行性を向上させるために WAL モードに切り替わっています。

セキュリティと安全性

リスク: LOW

実行可能ファイルではありません。バイナリのクラッシュリカバリデータです。データベースへの書き込み中に -journal を削除すると、データベースが破損します。これが主な運用上のリスクです。クラッシュによって残されたジャーナルは、SQLite が自動復旧するまで放置しても安全です。-journal には、中断されたトランザクションからの機密性の高い未コミットデータ(メッセージや資格情報の部分的な書き込みなど)が含まれている可能性があるため、メインデータベースと同様の機密性を持って扱ってください。親データベースなしで -journal を単独で開いたり配布したりしないでください。

形式の詳細

概要
正式名称SQLite Rollback Journal別名 SQLite journal, rollback journal
開発元D. Richard Hipp / SQLite Development Team (public domain)登場時期 SQLite 1.0, 2000 (rollback journal is the original journaling mechanism)
MIME タイプapplication/octet-stream
タイプSQLite 3 データベース用の一時的なトランザクションジャーナルサイドカー(バイナリ、またはプレーンテキストの «ホットジャーナル» スタブ)
標準規格オープン・ロイヤリティフリー
マジックバイト ・ ファイルシグネチャ
オフセット
0001020304050607
16進数
D9D505F920A163D7
ASCII
···· ·c·
ホット(永続的)ロールバックジャーナルは、8 バイトのマジックナンバー 0xD9D505F9 20A163D7 で始まります。一時的/過渡的なジャーナルは、SQLite のバージョンや OS によって、ゼロ埋めされたヘッダーまたは «ホットジャーナル» プレーンテキストスタブ(文字列 «-journal» のみ)で始まる場合があります。ファイル名は常にメインデータベースのパスに «-journal» が付加されたものになります(例: mydata.db-journal)。

DB-JOURNAL ファイルを開くプログラム

Windows3 apps
DB Browser for SQLite オープンソース メインデータベース(.db/.sqlite ファイル)を開いてください。SQLite が自動的に -journal を処理します。-journal を直接開かないでください。
SQLite (sqlite3 CLI) オープンソース «sqlite3 mydata.db» を実行します。ホットジャーナルが存在する場合、SQLite は接続時に自動的にロールバックを行い、ジャーナルを削除します。
Notepad++ (text editor - inspection only) オープンソース フォレンジック調査のためにバイナリジャーナル内容を表示できます。オフセット 0 に 8 バイトのマジックヘッダーが表示されます。編集はしないでください。
macOS2 apps
DB Browser for SQLite オープンソース メインデータベース(.db/.sqlite ファイル)を開いてください。SQLite が自動的に -journal を処理します。-journal を直接開かないでください。
SQLite (sqlite3 CLI) オープンソース «sqlite3 mydata.db» を実行します。ホットジャーナルが存在する場合、SQLite は接続時に自動的にロールバックを行い、ジャーナルを削除します。
Linux2 apps
SQLite (sqlite3 CLI) オープンソース «sqlite3 mydata.db» を実行します。ホットジャーナルが存在する場合、SQLite は接続時に自動的にロールバックを行い、ジャーナルを削除します。
DB Browser for SQLite オープンソース メインデータベース(.db/.sqlite ファイル)を開いてください。SQLite が自動的に -journal を処理します。-journal を直接開かないでください。

技術的詳細

詳細仕様
フォーマットタイプバイナリ一時トランザクションロールバックジャーナル(SQLite サイドカーファイル)
マジックバイト8バイトヘッダー: 0xD9 0xD5 0x05 0xF9 0x20 0xA1 0x63 0xD7(ホット/永続ジャーナル)
バイト順序ビッグエンディアン(ジャーナルヘッダーフィールドはネットワークバイト順で保存)
ジャーナルヘッダーサイズ28バイト(ページ数、ランダムナンス、セクタサイズ、ページサイズフィールド)
エンコーディングバイナリ - 変更前にコピーされた SQLite 3 データベースページイメージをそのまま保存
ページごとのチェックサムナンスとページデータから計算された 2 つの 32 ビット整数。不一致は古い、または不完全なジャーナルであることを示す
一般的なファイルサイズ中断されたトランザクションが触れたページ数に応じて 0 バイトから数百 MB
ジャーナルモードDELETE ジャーナルモード(SQLite のデフォルト)でのみ使用。WAL モードでは作成されない
命名規則メインデータベースのパスに -journal を付加(例: mydata.db → mydata.db-journal)
リカバリメカニズムSQLite は接続オープン時にホットジャーナルを検出し、ページイメージを再生してトランザクション前の状態を復元し、ジャーナルを削除する
WAL による代替SQLite 3.7.0(2010年7月)で導入された WAL モード(.db-wal + .db-shm)は、並行ワークロードに推奨され、.db-journal ファイルを使用しない
リリース日SQLite 1.0, 2000 (rollback journal is the original journaling mechanism)
最新バージョンSQLite 3.x current - format unchanged since early SQLite 3; superseded in practice by WAL (-wal)
オープンスタンダードはい · ロイヤリティフリー
仕様書www.sqlite.org

DB-JOURNAL の変換

コミュニティ Q&A

ユーザーからの質問
質問する
DB-JOURNAL ファイルを扱うユーザーからヘルプを得られます。OSやソフトウェアのバージョンなど、具体的に記載してください。
アカウント不要 ・ 通常1日以内に回答されます

まだ質問はありません。DB-JOURNAL ファイルについて最初の質問をしてみましょう。

よくある質問

.db-journal ファイルとは何ですか?
SQLite ロールバックジャーナルです。書き込みトランザクション中に SQLite が作成する一時的なバイナリファイルで、変更前の元のページ内容を保存します。COMMIT 時に自動的に削除されます。アプリのクラッシュ後に残っている場合、SQLite は次回のデータベースオープン時にそれを使用して不完全なトランザクションをロールバックします。
.db-journal ファイルを削除してもいいですか?
親アプリが実行されておらず、かつデータベースがトランザクションの途中でない場合に限ります。アプリがクラッシュして -journal が残った場合は、そのままにしておいてください。SQLite が次回のオープン時に自動的に再生して削除します。アプリの実行中に -journal を削除すると、データベースを破損させる恐れがあります。
.db-journal ファイルを開いたり読み取ったりするにはどうすればよいですか?
直接開くことはありません。DB Browser for SQLite または sqlite3 CLI で親データベース(.db/.sqlite ファイル)を開いてください。SQLite が自動的にジャーナルを処理します。フォレンジック調査が必要な場合は、Notepad++ でバイナリ内容を表示できます。
データベースが破損しており、-journal ファイルがあります。どうすればいいですか?
-journal を同じフォルダに保持したまま、任意の SQLite ツール(DB Browser for SQLite、sqlite3 CLI)で「メイン」データベースを開いてください。SQLite がホットジャーナルを検出し、不完全なトランザクションをロールバックしてジャーナルを削除します。通常、これでデータベースが復元されます。
.db-journal と .db-wal の違いは何ですか?
どちらも SQLite のトランザクションジャーナルです。-journal(ロールバックジャーナル)は従来のメカニズム(SQLite のデフォルト)で、変更「前」のページコピーを保存し、コミット時に削除されます。-wal(Write-Ahead Log)はより新しいもの(SQLite 3.7.0、2010年)で、変更「後」のページコピーを保存し、チェックポイントでマージされます。WAL は並行読み取りに高速ですが、-wal と -shm の両方のサイドカーを必要とします。
.db-journal は Android 特有のものですか?
いいえ。デフォルトの DELETE ジャーナルモードで SQLite を実行しているあらゆるプラットフォームで発生します。Android アプリ、iOS アプリ、デスクトッププログラム、ブラウザはすべて SQLite を使用しており、-journal ファイルを生成する可能性があります。
アプリがクラッシュしていないのに .db-journal があるのはなぜですか?
アプリがデータベースを正常に閉じなかった場合(強制終了、OS によるキルなど)に発生することがあります。この -journal はクラッシュ時のジャーナルと効果が同じであり、SQLite は次回のオープン時にロールバックを行います。

参考文献

1SQLite - Temporary Files Used By SQLitewww.sqlite.org
2SQLite - Atomic Commit in SQLitewww.sqlite.org

さらに探索

データベース全体から

今週のトップ拡張子

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

関連する拡張子

.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 で閲覧