Vad är filformatet MYD?
En .myd-fil är rad-datakomponenten i en MySQL MyISAM-tabell. MyISAM lagrar varje tabell som tre syskonfiler som delar samma basnamn: table.frm innehåller schemadefinitionen, table.MYD innehåller denna fil - de faktiska radposterna - och table.MYI innehåller index och metadata för motorn.
Filen .myd innehåller endast rå binär raddata utan egna kolumndefinitioner. Den kan inte läsas isolerat; definitionsfilen .frm och en körande MySQL- eller MariaDB-server krävs för att tolka posterna. Rader lagras i en av tre interna layouter: FIXED (alla kolumner har fast bredd), DYNAMIC (standard när VARCHAR- eller BLOB-kolumner finns), eller COMPRESSED (skrivskyddade tabeller packade offline med myisampack).
Som standard är filstorleken begränsad till 4 GB, men detta kan höjas till upp till 256 TB genom att ställa in tabellalternativen MAX_ROWS och AVG_ROW_LENGTH. Borttagna rader återvinns inte omedelbart - de förblir som luckor i en ledig lista tills OPTIMIZE TABLE körs. En valfri live-kontrollsumma (CHECKSUM=1) låter motorn spåra integritet på radnivå; verktyget myisamchk och SQL-satserna CHECK TABLE / REPAIR TABLE arbetar mot den tillhörande .MYI för att diagnostisera och reparera korruption.
MyISAM var standardlagringsmotorn i MySQL från MySQL 3.23 (cirka 2001) fram till MySQL 5.5 (2010), då InnoDB blev den nya standarden. Äldre databaser och arbetsbelastningar med främst läsning producerar fortfarande .myd-filer idag, med stöd av både MySQL och MariaDB.
Säkerhet & trygghet
RISK: MEDIUMEn .MYD är inert data - den innehåller ingen exekverbar kod - men den innebär samma operativa risker och integritetsrisker som alla databasfiler. Operativt: kopiera, flytta eller radera aldrig .MYD-filer medan MySQL-servern körs, och separera aldrig en .MYD från dess matchande .frm och .MYI eller blanda filer mellan inkompatibla serverversioner - att göra det korrumperar eller «kraschar» tabellen. Integritetsmässigt innehåller .MYD tabellens faktiska rader i klartext på disken (MyISAM har ingen kryptering), så en läckt .MYD är en dataläcka som exponerar vad tabellen än lagrade - användaruppgifter, e-post, PII. Arbeta alltid på kopior och hantera den som den känsliga databasfil den är.
Formatdetaljer
i ett nötskalProgram som öppnar MYD-filer
Tekniska detaljer
djup specifikation| Filroll | Lagrar rå raddata för en MyISAM-tabell; innehåller inget schema, index eller metadata för motorn |
| Följeslagarfiler | Alltid parad med `table.frm` (schema) och `table.MYI` (index) i MySQL-datakatalogen; de tre filerna delar samma basnamn |
| Radformat | FIXED (kolumner med fast bredd), DYNAMIC (variabel längd; standard när VARCHAR- eller BLOB-kolumner finns), eller COMPRESSED (skrivskyddad, packad med myisampack) |
| Byteordning | Little-endian |
| Kodning | Binär - rå binär post-heap, ingen textkodning |
| Filsignatur | Inga fasta magic bytes eller läsbar ASCII-signatur; identifieras genom filtillägg och närvaron av syskonfilerna .frm och .MYI |
| Standardgräns för filstorlek | 4 GB per tabelldatafil |
| Maximal filstorlek | Upp till 256 TB, konfigureras via tabellalternativen MAX_ROWS och AVG_ROW_LENGTH vid tabellskapande |
| Hantering av borttagna rader | Borttagna rader lämnar luckor i en intern ledig lista; utrymme återvinns genom att köra OPTIMIZE TABLE |
| Komprimering | Ingen som standard; skrivskyddade tabeller kan packas offline med myisampack för att skapa en komprimerad, skrivskyddad variant |
| Kryptering | Ingen inbyggd kryptering på tabellnivå - en känd begränsning i MyISAM jämfört med InnoDB |
| Kontrollsumma och integritet | Valfri live-kontrollsumma aktiverad med tabellalternativet CHECKSUM=1; integritetsreparation via myisamchk, CHECK TABLE eller REPAIR TABLE |
| MIME-typ | application/octet-stream |
| Plattformssupport | Korsplattform: Linux, Windows, macOS, FreeBSD - överallt där MySQL eller MariaDB körs |
| Ersatt av | InnoDB .ibd-filer för transaktionella arbetsbelastningar; InnoDB blev standardlagringsmotor i MySQL 5.5 (2010) |
| Släppt | 2001 (MyISAM became the default MySQL engine in MySQL 3.23) |
| Senaste version | Still produced by any MySQL/MariaDB table using ENGINE=MyISAM (legacy default before InnoDB took over in MySQL 5.5, 2010) |
| Specifikation | dev.mysql.com |
MYD-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om MYD-filer.