Vad är filformatet OPT?
Filer med filändelsen .opt används för att lagra egenskaper för databasens teckenuppsättning. Varje db.opt-fil innehåller två nyckelinställningar som definierar databasens standardteckenkodning och sorteringsordning - specifikt en rad för default-character-set= och en rad för default-collation=. MySQL-programvaran sparar denna information i db.opt-filer, en per databas, placerade i den databasens underkatalog i MySQL-datakatalogen.
Andra konfigurationsfiler för MySQL-databaser
MySQL-datakatalogen kan även innehålla andra databasrelaterade filer, inklusive:
.frm- en fil som innehåller databastabellens schema;.myd- en fil som lagrar MyISAM-tabelldata;.myi- en fil som innehåller information relaterad till MyISAM-tabellindex;.ibd- en fil som lagrar data och index för InnoDB-tabeller.
Filen db.opt var obligatorisk i MySQL 5.7 och tidigare, och skapades automatiskt när en databas skapades eller dess standardinställningar ändrades. MySQL 8.0 (släppt 2018) tog bort db.opt helt - databasens standardteckenuppsättning och sorteringsordning lagras nu istället i den transaktionella datakatalogen (data dictionary). Att redigera en db.opt-fil direkt rekommenderas inte; det korrekta sättet att ställa in dessa standardvärden är via CREATE DATABASE- eller ALTER DATABASE-satser.
Säkerhet & trygghet
RISK: LOWdb.opt är en liten, passiv textfil utan exekverbart innehåll, så den utgör ingen direkt säkerhetsrisk. De praktiska varningarna är operativa: redigera eller radera inte db.opt manuellt på en aktiv MySQL-server - ändra en databas teckenuppsättning/sortering med ALTER DATABASE så att servern förblir konsekvent; och när du kopierar en MyISAM-databas före version 8.0 via dess råfiler, flytta db.opt tillsammans med databaskatalogen så att dess standardinställningar inte går förlorade. I MySQL 8.0+ finns ingen db.opt alls, så dess frånvaro i en nyare datakatalog är normalt, inte ett problem.
Formatdetaljer
i ett nötskal- Generisk «options/settings»-fil (.opt) - Många orelaterade program använder .opt för sina egna alternativ/konfigurationer; utanför MySQL betyder filändelsen bara en applikations inställningsfil.
- Origin (OriginLab) alternativ / DVD .OPT / mallfiler - Vissa verktyg (t.ex. OriginLab, viss DVD-redigering) använder .opt för sin egen data; öppnas endast av den ursprungliga programvaran, orelaterat till MySQL.
Program som öppnar OPT-filer
Tekniska detaljer
djup specifikation| Fast filnamn | Heter alltid db.opt; filändelsen .opt förekommer inte självständigt - filen identifieras av sitt fasta namn och sin plats i katalogen, inte enbart av sin filändelse |
| Filformat | Konfigurationsfil i klartext med nyckel=värde; ingen binär struktur eller header |
| Kodning | ASCII / UTF-8, inget byte-order mark |
| Typisk filstorlek | Under 100 bytes - vanligtvis exakt två rader text |
| Lagrade inställningar | Exakt två direktiv: default-character-set=<charset> och default-collation=<collation> |
| Filplats | En db.opt per databas, inuti den databasens underkatalog under MySQL-datakatalogen (t.ex. /var/lib/mysql/<dbname>/db.opt på Linux) |
| Skapad av | MySQL-servern automatiskt vid CREATE DATABASE; uppdateras även av ALTER DATABASE … CHARACTER SET … COLLATE … |
| Inställningarnas omfattning | Standardinställningar per databas, som ärvs av nya tabeller och kolumner om de inte åsidosätts på tabell- eller kolumnnivå |
| Stöd för MySQL-versioner | Finns i MySQL 3.x till och med 5.7; borttagen helt i MySQL 8.0 (2018) |
| Anledning till borttagning | MySQL 8.0 ersatte filbaserad metadata med en transaktionell datakatalog lagrad i InnoDB, vilket eliminerade db.opt- och .frm-filer |
| MIME-typ | text/plain |
| Operativsystem | Linux, Windows, macOS - alla plattformar som kör MySQL Server 5.7 eller tidigare |
| Direkt redigering | Kan visas med valfri textredigerare; manuell redigering stöds inte och kan orsaka inkonsekvenser i teckenuppsättning/sortering mellan filen och serverns interna tillstånd |
| Ersatt av | MySQL-datakatalogtabellen mysql.schemata (InnoDB-baserad), som lagrar default_character_set_name och default_collation_name per schema |
| Släppt | Early MySQL (db.opt has existed for many MySQL versions in MyISAM/legacy data directories) |
| Senaste version | Used up to MySQL 5.7; REMOVED in MySQL 8.0 (2018) when metadata moved into the transactional data dictionary |
| Specifikation | dev.mysql.com |
OPT-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om OPT-filer.