.FRM

FRM-fil

MySQL Table Definition File
Still et spørsmål
HURTIGSVAR

En FRM-fil er en MySQL-tabell-definisjonsfil. Den lagrer kolonnenavn, datatyper og indekser for én databasetabell, men ikke selve raddataene. For å lese den, kjør «mysqlfrm --diagnostic» på filen, eller gjenopprett datamappen til en samsvarende MySQL- eller MariaDB-server. MySQL 8.0 oppretter ikke lenger .frm-filer i det hele tatt.

Utvikler: MySQL AB / Oracle Corporation Kategori: Databasefiler MIME: application/octet-stream
ÅPNES PÅ Windows macOS Linux
Relatert: .DB · .DBF · .ACCDB · .SQL

På denne siden

19k+ filendelser indeksert
Sist vurdert Aug 15, 2026

Usikker på hva filen din er?

Slipp hvilken som helst fil inn i vår identifikator - vi leser bare de første bytene for å navngi formatet.

Identifiser en fil

Hva er FRM-filformatet?

En .frm-fil er en MySQL-tabell-definisjonsfil som lagrer informasjon om strukturen og oppsettet til en enkelt databasetabell. Én .frm-fil opprettes for hver tabell, og tabellnavnet brukes som filnavn for .frm - så en tabell med navnet orders produserer orders.frm inne i MySQL-datamappen.

.frm-formatet registrerer kun tabellskjemaet: kolonnenavn, datatyper, lengder, standardverdier og metadata for indekser/nøkler. Den inneholder aldri raddata. For MyISAM-tabeller ligger de faktiske dataene i en tilhørende .MYD-fil (med indekser i en .MYI-fil); MySQL krevde alle tre filene sammen for å få full tilgang til en MyISAM-tabell. InnoDB-tabeller parret sin .frm med en separat .IBD-tabellplassfil i stedet.

Filen er en proprietær «little-endian» binær blob som starter med de magiske bytene 0xFE 0x01. Den ble introdusert med MySQL 1.0 i 1995 og brukt av alle lagringsmotorer - både MyISAM og InnoDB - frem til MySQL 5.7 og MariaDB. MySQL 8.0 (desember 2018) fjernet .frm-filer helt, og flyttet tabell-metadata inn i InnoDBs transaksjonelle datakatalog. MariaDB fortsatte å bruke .frm-filer etter dette skillet.

Når raddata går tapt eller blir korrupt, kan en overlevende .frm-fil inspiseres med diagnoseverktøyet mysqlfrm for å rekonstruere CREATE TABLE-setningen og gjenopprette kolonneoppsettet.

Sikkerhet og trygghet

RISIKO: LOW

En .frm-fil er passive binære tabell-metadata - den inneholder ingen kjørbar kode og er trygg å håndtere. De praktiske risikoene er knyttet til datagjenoppretting, ikke skadevare: en .frm som gjenopprettes i feil MySQL-versjon kan feile eller korrumpere katalogen, og en enslig .frm uten tilhørende .MYD/.ibd kan ikke returnere radene dine. Arbeid alltid på kopier, bruk samme serverversjon som originalen, og hold de tilhørende datafilene samlet.

Formatdetaljer

i et nøtteskall
FULLT NAVNMySQL Table Definition Fileogså kjent som MySQL table format file, MySQL .frm file
UTVIKLERMySQL AB / Oracle Corporationsiden 1995 (MySQL 1.0, used by ISAM/MyISAM/InnoDB through MySQL 5.7)
MIME-TYPEapplication/octet-stream
TYPEBinær tabell-definisjonsfil (datakatalogoppføring for én tabell)
Denne filendelsen brukes også av…
  • Visual Basic Form-fil - Kildefil som beskriver et skjemaoppsett og kontroller i VB6 og tidligere (ren tekst).
  • FormFlow Form - Elektronisk skjemadokument opprettet av den eldre JetForm/FormFlow-programvaren.
  • Adobe FrameMaker (legacy) - Eldre FrameMaker-installasjoner brukte .frm for enkelte skjema-/malressurser.
MAGIC BYTES · FILSIGNATUR
OFFSET
0001
HEX
FE01
ASCII
··
FRM-headeren starter med et magisk/versjons-ord (vanligvis 0xFE 0x01 for det klassiske formatet). Det finnes ingen stabil ASCII-signatur på tvers av versjoner; filen er en proprietær binær blob, så identifikasjon skjer via filendelse + kontekst (ligger ved siden av .MYD/.MYI eller .ibd i en MySQL-datamappe).

Programmer som åpner FRM-filer

Windows3 apps
MySQL Server Åpen kildekode Plasser tabellfilene i serverens datamappe (samsvarende versjon), start MySQL, og kjør deretter SHOW CREATE TABLE / mysqldump. Den riktige måten å bruke en .frm på.
mysqlfrm (MySQL Utilities) Åpen kildekode Kjør «mysqlfrm --diagnostic table.frm» for å lese CREATE TABLE-setningen direkte fra filen, uten en kjørende server.
MariaDB Server Åpen kildekode MariaDB forstår fortsatt .frm - installer den, legg filene i datamappen, og dump skjemaet/dataene.
macOS1 app
MySQL Server Åpen kildekode Plasser tabellfilene i serverens datamappe (samsvarende versjon), start MySQL, og kjør deretter SHOW CREATE TABLE / mysqldump. Den riktige måten å bruke en .frm på.
Linux2 apps
MySQL / MariaDB Server Åpen kildekode Kopier filene til /var/lib/mysql (samsvarende versjon), start tjenesten, og kjør deretter SHOW CREATE TABLE eller mysqldump.
mysqlfrm (MySQL Utilities) Åpen kildekode Kjør «mysqlfrm --diagnostic table.frm» for å lese CREATE TABLE-setningen direkte fra filen, uten en kjørende server.

Tekniske detaljer

dyp spesifikasjon
FilstrukturProprietær little-endian binær blob; ingen komprimering eller kryptering
Magiske byte0xFE 0x01 ved posisjon 0 (versjonsavhengig binær header; ingen stabil ASCII-signatur)
InnholdKolonnedefinisjoner (navn, typer, lengder, standardverdier), metadata for indekser/nøkler og tabellvalg - kun skjema, aldri raddata
Typisk filstørrelse1 KB - 50 KB per tabell; vokser med antall kolonner og indekser
MIME-typeapplication/octet-stream
Én fil per tabellHver tabell får sin egen .frm-fil oppkalt etter tabellen, lagret i skjemaets undermappe i MySQL-datamappen
MyISAM-følgesvenner.MYD (raddata) og .MYI (indeksdata) - alle tre kreves for full tilgang til MyISAM-tabeller
InnoDB-følgesvenn.ibd-tabellplassfil - .frm holdt skjemaet mens .ibd holdt data og indekser
Støttede motorerSkrevet av alle lagringsmotorer i MySQL 3.x - 5.7: MyISAM, InnoDB, MEMORY, CSV, ARCHIVE og andre
Fjernet iMySQL 8.0 (desember 2018): metadata flyttet inn i InnoDBs transaksjonelle datakatalog; ingen .frm-filer opprettes eller leses
Fortsatt brukt avMariaDB fortsatte å generere .frm-filer etter MySQL 8.0-skillet
Gjenopprettingsverktøymysqlfrm (MySQL Utilities) leser en frittstående .frm for å rekonstruere CREATE TABLE DDL-setningen
UtviklerMySQL AB (opprinnelig); Oracle Corporation (siden oppkjøpet i 2010)
OperativsystemerPlattformuavhengig: Linux, Windows, macOS, FreeBSD - overalt hvor MySQL eller MariaDB kjørte
Utgitt1995 (MySQL 1.0, used by ISAM/MyISAM/InnoDB through MySQL 5.7)
Siste versjonLast used in MySQL 5.7 / MariaDB; removed from MySQL 8.0 (December 2018)
Spesifikasjondev.mysql.com

FRM-konverteringer

Spørsmål og svar fra fellesskapet

spurt av brukere
Still et raskt spørsmål
Få hjelp fra folk som jobber med FRM-filer. Vær spesifikk - inkluder systemet ditt og programvareversjon.
Ingen konto nødvendig · svar vanligvis innen en dag

Ingen spørsmål ennå - vær den første til å spørre om FRM-filer.

Ofte stilte spørsmål

Hvordan åpner jeg en .frm-fil?
Du åpner den ikke manuelt. Les skjemaet med «mysqlfrm --diagnostic table.frm», eller plasser tabellfilene i en samsvarende MySQL/MariaDB-servers datamappe og kjør «SHOW CREATE TABLE». Å åpne den rå binærfilen i et tekstredigeringsprogram viser bare uforståelig tekst.
Kan jeg gjenopprette dataene mine fra bare en .frm-fil?
Nei - .frm inneholder kun tabellstrukturen (kolonner, typer, indekser). De faktiske radene lever i .MYD (MyISAM) eller .ibd (InnoDB)-filen. Uten disse kan du gjenopprette skjemaet, men ikke dataene.
Hvordan får jeg CREATE TABLE-setningen fra en .frm?
Kjør «mysqlfrm --diagnostic yourtable.frm» fra MySQL Utilities, eller gjenopprett filen i en MySQL/MariaDB-server og kjør «SHOW CREATE TABLE».
Hvorfor har ikke MySQL 8.0 .frm-filer?
MySQL 8.0 (2018) erstattet .frm-filer per tabell med en transaksjonell datakatalog lagret inne i InnoDB, noe som løste det gamle problemet med at .frm-filer kom ut av synk med serverens metadata.
Jeg kopierte .frm-filen, men får «Table doesn't exist» - hvorfor?
InnoDB trenger den tilhørende tabellplassen (.ibd) og oppføringen i datakatalogen. Å kopiere kun .frm er ikke nok; gjenopprett hele datamappen, eller bruk et verktøy som mysqlfrm for å lese kun strukturen.
Hvilke programmer åpner .frm i tillegg til MySQL?
MariaDB Server forstår også .frm, og mysqlfrm leser den uten en server. Det finnes ingen generell «visningsprogram» - det er et internt format for serveren.

Referanser

1MySQL Internals Manual - .frm file formatdev.mysql.com
2MySQL 8.0 Reference - Data Dictionary (replaces .frm)dev.mysql.com

Utforsk videre

på tvers av databasen

Populære filendelser denne uken

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

Relaterte filendelser

.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

Gratis filverktøy

En filidentifikator og bildekonvertering i nettleseren - alt kjører på din enhet.

Åpne verktøykassen

Bla i filendelser A-Å