.DB-SHM

DB-SHM ファイル

SQLite Shared Memory File
質問する
クイック回答

.db-shm ファイルは、データベースが WAL (Write-Ahead Logging) モードで動作しているときに自動的に作成される一時的な SQLite インデックスファイルです。ユーザーデータは含まれておらず、直接開くことはできません。代わりにメインの .db ファイルを開いてください。SQLite が -shm ファイルを自動的に管理します。データベースが完全に閉じられている場合に限り、削除しても安全です。

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

このページの内容

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

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

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

ファイルを識別する

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

.db-shm ファイルは、データベースが WAL (Write-Ahead Logging) モードで動作する際に SQLite によって自動的に作成される一時的な共有メモリインデックスファイルです。メインのデータベースファイルおよびそのコンパニオンである .db-wal ファイルと共に存在し、これら 3 つのファイルセットで WAL モードを構成します。

このファイルのサイズは 32 KB 固定で、同じ WAL モードのデータベースを共有するすべての SQLite 接続によってメモリマップされます。ここには WAL インデックスヘッダーと、WAL フレーム番号をデータベースページ番号にマッピングするハッシュテーブルが格納されており、読み取り側が WAL ファイル全体をスキャンすることなく、各ページの最新バージョンを効率的に特定できるようにします。

メインの .db ファイルとは異なり、.db-shm ファイルにはユーザーデータは保存されず、CPU アーキテクチャ間でのポータビリティもありません(バイト順序はホストマシンと一致します)。SQLite は、最初の接続が WAL モードのデータベースを開いたときに自動的に作成し、最後の接続が正常に閉じたときに削除します。クラッシュ後に残された .db-shm ファイルは、データベースが現在開かれていない場合に限り削除しても安全です。SQLite は次回のアクセス時にこれを再作成します。

排他ロックモード(exclusive locking mode)では、SQLite は代わりにヒープメモリを使用するため、.db-shm ファイルはディスクに書き込まれません。このファイルは SQLite 自体以外のツールで開いたり、意味のある形で解釈したりすることはできません。

セキュリティと安全性

リスク: LOW

.db-shm ファイル自体にはユーザーデータは含まれず、意味のある解析は不可能です。実行可能なコンテンツもありません。関連する .db データベースファイルには、アプリケーションに応じて機密性の高い個人データ(メッセージ、連絡先など)が含まれている場合があります。データベースが閉じているときに古い -shm ファイルを削除するのは安全ですが、データベースが開いているときに削除すると破損の原因となる可能性があります。

形式の詳細

概要
正式名称SQLite Shared Memory File別名 SQLite WAL shared memory, SHM file
開発元SQLite Development Team (D. Richard Hipp)登場時期 2010 (SQLite 3.7.0, WAL mode)
MIME タイプapplication/octet-stream
タイプバイナリ共有メモリインデックス(一時的、OS ネイティブのバイト順序)
標準規格オープン・ロイヤリティフリー

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

Windows2 apps
SQLite (command-line shell) オープンソース .db-shm を直接開かないでください。sqlite3 でメインの .db ファイルを開けば、SQLite が自動的に -shm を管理します。
DB Browser for SQLite オープンソース メインの .db ファイルを開いてください。DB Browser は WAL/-shm を透過的に処理します。-shm を直接開かないでください。
macOS1 app
DB Browser for SQLite オープンソース メインの .db ファイルを開いてください。DB Browser は WAL/-shm を透過的に処理します。-shm を直接開かないでください。
Linux1 app
SQLite (command-line shell) オープンソース .db-shm を直接開かないでください。sqlite3 でメインの .db ファイルを開けば、SQLite が自動的に -shm を管理します。
Android1 app
Google Android (OS) 無料 Android は内部で SQLite データベースを管理しています。-shm ファイルはアプリデータ内に現れ、OS によって管理されます。

技術的詳細

詳細仕様
必要な SQLite モードWAL (Write-Ahead Logging) モード。ジャーナルモードや排他ロックモードでは作成されません
ファイルサイズ32 KB 固定(ロック領域ごとに 1 つの 32 KB ブロック)
バイト順序ホストマシンのネイティブ。CPU アーキテクチャ間の互換性なし
エンコーディングバイナリ(メモリマップされた OS 構造体。スタンドアロンのシリアライズ形式ではない)
内容WAL インデックスヘッダーおよび WAL フレーム番号をデータベースページ番号にマッピングするハッシュテーブル
ユーザーデータユーザーデータは保存されません。コンパニオンファイル .db-wal の読み取りインデックスとして機能します
ライフサイクル最初の WAL モード接続時に自動作成。最後の正常なクローズ時に自動削除
クラッシュリカバリデータベースが開いていなければ手動削除が可能。SQLite が自動的に再作成します
関連ファイル常にメインデータベースの .db および書き込み前方ログの .db-wal と同じ場所に配置されます
クラッシュ安全性メカニズム二重コピーされた WAL インデックスヘッダー。オープン時に両方のコピーの整合性がチェックされます
排他ロックモードSQLite は代わりにヒープメモリを使用するため、ディスクに .db-shm ファイルは書き込まれません
MIME タイプapplication/octet-stream(専用の MIME タイプなし)
導入バージョンSQLite WAL モード、バージョン 3.7.0 (2010年7月)
プラットフォームAndroid, iOS, Windows, Linux, macOS
リリース日2010 (SQLite 3.7.0, WAL mode)
最新バージョンSQLite 3.x (current; format tied to WAL implementation)
オープンスタンダードはい · ロイヤリティフリー
仕様書www.sqlite.org

コミュニティ Q&A

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

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

よくある質問

.db-shm ファイルとは何ですか?
SQLite データベースが WAL モードで動作しているときに自動的に作成される、SQLite 共有メモリインデックスファイルです。同時アクセスの調整を助けるもので、ユーザーデータは含まれません。
.db-shm ファイルを削除してもいいですか?
関連するデータベース (.db) が完全に閉じられている場合にのみ可能です。データベースの使用中に削除すると、破損の原因となる可能性があります。データベースが開かれていない状態での削除は安全であり、SQLite が自動的に再作成します。
なぜ .db、.db-shm、.db-wal の 3 つのファイルがあるのですか?
これが WAL モードの構成です。メインの .db ファイル + 書き込み前方ログ (.db-wal) + 共有メモリインデックス (.db-shm) です。これら 3 つが合わさって 1 つの論理的なデータベースを形成します。
.db-shm ファイルはどうやって開きますか?
-shm ファイルを直接開くことはありません。DB Browser for SQLite や sqlite3 コマンドラインツールでメインの .db データベースファイルを開いてください。SQLite が自動的に -shm を管理します。
db-shm は Android 専用のファイルですか?
いいえ。これは SQLite の標準機能(2010年の 3.7.0 以降)であり、Android、iOS、macOS、Windows、Linux など、WAL モードで SQLite を使用するすべてのプラットフォームに存在します。

参考文献

1SQLite - WAL-mode File Format (walformat.html)www.sqlite.org
2SQLite - Write-Ahead Logging (wal.html)www.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.RPMSGRestricted Permission Message
9.MDMarkdown Document
10.TMPTemporary 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 で閲覧