.FRM

Файл FRM

MySQL Table Definition File
Задать вопрос
БЫСТРЫЙ ОТВЕТ

An FRM file is a MySQL table definition file. It stores the column names, data types, and indexes for one database table, but not the actual row data. To read it, run mysqlfrm --diagnostic on the file, or restore the data directory into a matching MySQL or MariaDB server. MySQL 8.0 no longer creates .frm files at all.

Разработчик: MySQL AB / Oracle Corporation Категория: Файлы баз данных MIME: application/octet-stream
ОТКРЫВАЕТСЯ НА Windows macOS Linux
Связанные: .DB · .DBF · .ACCDB · .SQL

На этой странице

Проиндексировано расширений: 19k+
Последняя проверка: Aug 15, 2026

Не знаете, что это за файл?

Перетащите любой файл в наш идентификатор - мы прочитаем первые байты, чтобы определить формат.

Идентифицировать файл

Что такое формат файла FRM?

An .frm file is a MySQL table definition file that stores information about the structure and layout of a single database table. One .frm file is created for each table, and the table name is used for the .frm filename - so a table named orders produces orders.frm inside the MySQL data directory.

The .frm format records only the table schema: column names, data types, lengths, default values, and index/key metadata. It never holds row data. For MyISAM tables, the actual data lives in a companion .MYD file (with indexes in a .MYI file); MySQL required all three files together to fully access a MyISAM table. InnoDB tables paired their .frm with a separate .IBD tablespace file instead.

The file is a proprietary little-endian binary blob starting with the magic bytes 0xFE 0x01. It was introduced with MySQL 1.0 in 1995 and used by every storage engine - MyISAM and InnoDB alike - through MySQL 5.7 and MariaDB. MySQL 8.0 (December 2018) removed .frm files entirely, shifting table metadata into InnoDB's transactional data dictionary. MariaDB continued using .frm files after that split.

When row data is lost or corrupted, a surviving .frm file can be inspected with the mysqlfrm diagnostic utility to reconstruct the CREATE TABLE statement and recover the column layout.

Безопасность и защита

РИСК: LOW

A .frm file is passive binary table metadata - it contains no executable code and is safe to handle. The practical risks are data-recovery ones, not malware: a .frm restored into the wrong MySQL version can fail or corrupt the dictionary, and a lone .frm without its .MYD/.ibd cannot return your rows. Always work on copies, match the original server version, and keep the companion data files together.

Детали формата

в двух словах
ПОЛНОЕ НАЗВАНИЕMySQL Table Definition Fileтакже известен как MySQL table format file, MySQL .frm file
РАЗРАБОТЧИКMySQL AB / Oracle Corporationс 1995 (MySQL 1.0, used by ISAM/MyISAM/InnoDB through MySQL 5.7)
MIME-ТИПapplication/octet-stream
ТИПBinary table-definition file (data dictionary entry for one table)
СВЯЗАННЫЕ.db.dbf.accdb.sql
Это расширение также используется в…
  • Visual Basic Form file - Source file describing a form's layout and controls in VB6 and earlier (plain text).
  • FormFlow Form - Electronic form document created by the legacy JetForm/FormFlow software.
  • Adobe FrameMaker (legacy) - Older FrameMaker installations used .frm for some form/template resources.
MAGIC BYTES · СИГНАТУРА ФАЙЛА
СМЕЩЕНИЕ
0001
HEX
FE01
ASCII
··
The FRM header starts with a magic/version word (commonly 0xFE 0x01 for the classic format). There is no stable cross-version ASCII signature; the file is a proprietary binary blob, so identification is by extension + context (sits next to .MYD/.MYI or .ibd in a MySQL data directory).

Программы, открывающие файлы FRM

Windows3 apps
MySQL Server Открытый код Place the table files in the server's data directory (matching version), start MySQL, then run SHOW CREATE TABLE / mysqldump. The proper way to use a .frm.
mysqlfrm (MySQL Utilities) Открытый код Run 'mysqlfrm --diagnostic table.frm' to read the CREATE TABLE statement directly from the file, without a running server.
MariaDB Server Открытый код MariaDB still understands .frm - install it, drop the files into its data dir, and dump the schema/data.
macOS1 app
MySQL Server Открытый код Place the table files in the server's data directory (matching version), start MySQL, then run SHOW CREATE TABLE / mysqldump. The proper way to use a .frm.
Linux2 apps
MySQL / MariaDB Server Открытый код Copy the files into /var/lib/mysql (matching version), start the service, then SHOW CREATE TABLE or mysqldump.
mysqlfrm (MySQL Utilities) Открытый код Run 'mysqlfrm --diagnostic table.frm' to read the CREATE TABLE statement directly from the file, without a running server.

Технические подробности

глубокая спецификация
File structureProprietary little-endian binary blob; no compression or encryption
Magic bytes0xFE 0x01 at offset 0 (version-dependent binary header; no stable ASCII signature)
ContentColumn definitions (names, types, lengths, defaults), index/key metadata, and table options - schema only, never row data
Typical file size1 KB - 50 KB per table; grows with column and index count
MIME typeapplication/octet-stream
One file per tableEach table gets its own .frm file named after the table, stored in the schema's subdirectory of the MySQL data directory
MyISAM companions.MYD (row data) and .MYI (index data) - all three required for full MyISAM table access
InnoDB companion.ibd tablespace file - the .frm held the schema while .ibd held data and indexes
Engine coverageWritten by all storage engines in MySQL 3.x - 5.7: MyISAM, InnoDB, MEMORY, CSV, ARCHIVE, and others
Removed inMySQL 8.0 (December 2018): metadata moved into the InnoDB transactional data dictionary; no .frm files created or read
Still used byMariaDB continued generating .frm files after the MySQL 8.0 split
Recovery utilitymysqlfrm (MySQL Utilities) reads a standalone .frm to reconstruct the CREATE TABLE DDL statement
DeveloperMySQL AB (original); Oracle Corporation (since 2010 acquisition)
Operating systemsCross-platform: Linux, Windows, macOS, FreeBSD - anywhere MySQL or MariaDB ran
Выпущен1995 (MySQL 1.0, used by ISAM/MyISAM/InnoDB through MySQL 5.7)
Последняя версияLast used in MySQL 5.7 / MariaDB; removed from MySQL 8.0 (December 2018)
Спецификацияdev.mysql.com

Конвертации FRM

Вопросы и ответы сообщества

спрошено пользователями
Задать быстрый вопрос
Получите помощь от людей, работающих с файлами FRM. Будьте конкретны - укажите вашу систему и версию ПО.
Аккаунт не нужен · ответы обычно в течение дня

Вопросов пока нет - станьте первым, кто спросит о файлах FRM.

Часто задаваемые вопросы

How do I open a .frm file?
You don't open it by hand. Read its schema with 'mysqlfrm --diagnostic table.frm', or place the table files into a matching MySQL/MariaDB server's data directory and run SHOW CREATE TABLE. Opening the raw binary in a text editor shows gibberish.
Can I recover my data from just a .frm file?
No - the .frm holds only the table structure (columns, types, indexes). The actual rows live in the .MYD (MyISAM) or .ibd (InnoDB) file. Without those, you can recover the schema but not the data.
How do I get the CREATE TABLE statement from a .frm?
Run 'mysqlfrm --diagnostic yourtable.frm' from MySQL Utilities, or restore the file into a MySQL/MariaDB server and run SHOW CREATE TABLE.
Why doesn't MySQL 8.0 have .frm files?
MySQL 8.0 (2018) replaced per-table .frm files with a transactional data dictionary stored inside InnoDB, fixing the old problem of .frm files drifting out of sync with the server's metadata.
I copied the .frm but get 'Table doesn't exist' - why?
InnoDB needs the matching tablespace (.ibd) and the data dictionary entry. Copying the .frm alone isn't enough; restore the whole data directory, or use a tool like mysqlfrm to read just the structure.
What programs open .frm besides MySQL?
MariaDB Server understands .frm too, and mysqlfrm reads it without a server. There's no general 'viewer' - it's a server-internal format.

Ссылки

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

Узнать больше

по всей базе данных

Популярные расширения на этой неделе

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.JPGJPEG Image
4.PARTPartial Download File
5.MDMarkdown Document
6.RPMSGRestricted Permission Message
7.DATProgram Data File (generic)
8.BINCD/DVD Disc Image (BIN/CUE)
9.EXEWindows Executable (Portable Executable)
10.DBSQLite Database 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