.DB-SHM

Plik DB-SHM

SQLite Shared Memory File
Zadaj pytanie
SZYBKA ODPOWIEDŹ

Plik .db-shm to tymczasowy plik indeksu SQLite tworzony automatycznie, gdy baza danych działa w trybie WAL (Write-Ahead Logging). Nie zawiera on danych użytkownika i nie można go otworzyć bezpośrednio. Zamiast tego należy otworzyć główny plik .db; SQLite samodzielnie zarządza plikiem -shm. Można go bezpiecznie usunąć tylko wtedy, gdy baza danych jest całkowicie zamknięta.

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

Na tej stronie

Zindeksowano 19k+ rozszerzeń
Ostatnia weryfikacja Jul 26, 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-SHM?

Plik .db-shm to efemeryczny plik indeksu pamięci współdzielonej, tworzony automatycznie przez SQLite, gdy baza danych pracuje w trybie WAL (Write-Ahead Logging). Istnieje on obok głównego pliku bazy danych i towarzyszącego mu pliku .db-wal, tworząc razem zestaw trzech plików wymagany przez tryb WAL.

Plik ma stały rozmiar 32 KB i jest mapowany w pamięci przez wszystkie połączenia SQLite współdzielące tę samą bazę danych w trybie WAL. Przechowuje on nagłówki indeksu WAL oraz tablicę mieszającą mapującą numery ramek WAL na numery stron bazy danych, co pozwala czytelnikom na efektywne lokalizowanie najnowszej wersji każdej strony bez konieczności skanowania całego pliku WAL.

W przeciwieństwie do głównego pliku .db, plik .db-shm nie przechowuje żadnych danych użytkownika i nie jest przenośny między architekturami procesorów - jego kolejność bajtów odpowiada maszynie hosta. SQLite tworzy go automatycznie, gdy pierwsze połączenie otwiera bazę danych w trybie WAL, i usuwa go w sposób czysty, gdy ostatnie połączenie zostaje zamknięte. Pozostały po awarii plik .db-shm można bezpiecznie usunąć, pod warunkiem, że baza danych nie jest aktualnie otwarta; SQLite odtworzy go przy następnym dostępie.

W trybie blokowania wyłącznego (exclusive locking mode) SQLite używa zamiast tego pamięci sterty, więc żaden plik .db-shm nie jest zapisywany na dysku. Plik nie może być otwarty ani zinterpretowany w sensowny sposób przez żadne narzędzie inne niż samo SQLite.

Bezpieczeństwo

RYZYKO: LOW

Sam plik .db-shm nie zawiera danych użytkownika i nie może być sensownie parsowany. Brak treści wykonywalnych. Powiązany plik bazy danych .db może zawierać wrażliwe dane osobowe (wiadomości, kontakty itp.) w zależności od aplikacji. Usuwanie nieaktualnego pliku -shm (gdy baza jest zamknięta) jest bezpieczne; usuwanie go, gdy baza jest otwarta, może spowodować uszkodzenie danych.

Szczegóły formatu

w pigułce
PEŁNA NAZWASQLite Shared Memory Fileznany również jako SQLite WAL shared memory, SHM file
DEWELOPERSQLite Development Team (D. Richard Hipp)od 2010 (SQLite 3.7.0, WAL mode)
TYP MIMEapplication/octet-stream
TYPbinarny indeks pamięci współdzielonej (efemeryczny, natywna kolejność bajtów OS)
STANDARDOtwarty · bezpłatny

Programy otwierające pliki DB-SHM

Windows2 apps
SQLite (command-line shell) Open-source NIE otwieraj .db-shm bezpośrednio; otwórz główny plik .db za pomocą sqlite3 - SQLite zarządza -shm automatycznie.
DB Browser for SQLite Open-source Otwórz główny plik .db; DB Browser obsługuje WAL/-shm w sposób przezroczysty. Nie otwieraj -shm bezpośrednio.
macOS1 app
DB Browser for SQLite Open-source Otwórz główny plik .db; DB Browser obsługuje WAL/-shm w sposób przezroczysty. Nie otwieraj -shm bezpośrednio.
Linux1 app
SQLite (command-line shell) Open-source NIE otwieraj .db-shm bezpośrednio; otwórz główny plik .db za pomocą sqlite3 - SQLite zarządza -shm automatycznie.
Android1 app
Google Android (OS) Darmowy Android zarządza bazami danych SQLite wewnętrznie; pliki -shm pojawiają się w danych aplikacji i są zarządzane przez system operacyjny.

Szczegóły techniczne

specyfikacja
Wymagany tryb SQLiteTryb WAL (Write-Ahead Logging); nie jest tworzony w trybie dziennika (journal) ani blokowania wyłącznego
Rozmiar plikuStały 32 KB (jeden blok 32 KB na region blokady)
Kolejność bajtówNatywna dla maszyny hosta; nieprzenośna między architekturami procesorów
KodowanieBinarne (struktury OS mapowane w pamięci; nie jest to samodzielny format serializowany)
ZawartośćNagłówki indeksu WAL i tablica mieszająca mapująca numery ramek WAL na numery stron bazy danych
Dane użytkownikaNie przechowuje danych użytkownika; pełni funkcję indeksu odczytu towarzyszącego pliku .db-wal
Cykl życiaTworzony automatycznie przy otwarciu pierwszego połączenia w trybie WAL; usuwany automatycznie przy ostatnim poprawnym zamknięciu
Odzyskiwanie po awariiBezpieczny do ręcznego usunięcia, jeśli baza danych nie jest otwarta; SQLite odtwarza go automatycznie
Pliki towarzysząceZawsze znajduje się w tej samej lokalizacji co główna baza danych .db i dziennik .db-wal
Mechanizm bezpieczeństwa przy awariiPodwójna kopia nagłówka indeksu WAL; obie kopie sprawdzane pod kątem spójności przy otwarciu
Tryb blokowania wyłącznegoSQLite używa zamiast tego pamięci sterty; żaden plik .db-shm nie jest zapisywany na dysku
Typ MIMEapplication/octet-stream (brak dedykowanego typu MIME)
Wprowadzony wTryb SQLite WAL, wersja 3.7.0 (lipiec 2010)
PlatformaAndroid, iOS, Windows, Linux, macOS
Wydano2010 (SQLite 3.7.0, WAL mode)
Najnowsza wersjaSQLite 3.x (current; format tied to WAL implementation)
Otwarty standardTak · bezpłatny (royalty-free)
Specyfikacjawww.sqlite.org

Pytania i odpowiedzi społeczności

pytania użytkowników
Zadaj szybkie pytanie
Uzyskaj pomoc od osób pracujących z plikami DB-SHM. 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-SHM.

Najczęściej zadawane pytania

Co to jest plik .db-shm?
To plik indeksu pamięci współdzielonej SQLite, tworzony automatycznie, gdy baza danych SQLite działa w trybie WAL. Pomaga koordynować równoczesny dostęp i nie zawiera danych użytkownika.
Czy mogę usunąć plik .db-shm?
Tylko jeśli powiązana baza danych (.db) jest całkowicie zamknięta. Usunięcie go, gdy baza danych jest w użyciu, może spowodować uszkodzenie danych. Gdy baza nie jest otwarta, usunięcie jest bezpieczne - SQLite odtworzy go automatycznie.
Dlaczego mam pliki .db, .db-shm oraz .db-wal?
To jest tryb WAL: główny plik .db + dziennik zapisu z wyprzedzeniem (.db-wal) + indeks pamięci współdzielonej (.db-shm). Wszystkie trzy razem stanowią jedną logiczną bazę danych.
Jak otworzyć plik .db-shm?
Nie otwiera się pliku -shm bezpośrednio. Należy otworzyć główny plik bazy danych .db w programie DB Browser for SQLite lub narzędziu wiersza poleceń sqlite3; SQLite zarządza plikiem -shm automatycznie.
Czy db-shm to plik występujący tylko w systemie Android?
Nie. Jest to standardowa funkcja SQLite (od wersji 3.7.0, 2010) obecna na wszystkich platformach korzystających z SQLite w trybie WAL: Android, iOS, macOS, Windows, Linux.

Źródła

1SQLite - WAL-mode File Format (walformat.html)www.sqlite.org
2SQLite - Write-Ahead Logging (wal.html)www.sqlite.org

Odkrywaj dalej

w całej bazie danych

Najpopularniejsze rozszerzenia w tym tygodniu

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

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