Che cos'è il formato di file OPT?
I file con l'estensione .opt vengono utilizzati per memorizzare le proprietà del set di caratteri del database. Ogni file db.opt contiene due impostazioni chiave che definiscono la codifica dei caratteri e la collation predefinite del database - nello specifico una riga default-character-set= e una riga default-collation=. Il software di gestione del database MySQL salva queste informazioni nei file db.opt, uno per database, situati all'interno della sottodirectory di quel database nella directory dei dati di MySQL.
Altri file di configurazione del database MySQL
La directory dei dati di MySQL può contenere anche altri file relativi al database, tra cui:
.frm- un file contenente lo schema della tabella del database;.myd- un file che memorizza i dati della tabella MyISAM;.myi- un file che contiene informazioni relative agli indici della tabella MyISAM;.ibd- un file che memorizza dati e indici delle tabelle InnoDB.
Il file db.opt era obbligatorio in MySQL 5.7 e versioni precedenti, creato automaticamente ogni volta che veniva creato un database o venivano modificate le sue impostazioni predefinite. MySQL 8.0 (rilasciato nel 2018) ha rimosso completamente db.opt - il set di caratteri e la collation predefiniti del database sono ora memorizzati nel dizionario dei dati transazionali. La modifica diretta di un file db.opt non è raccomandata; il modo corretto per impostare questi valori predefiniti è attraverso le istruzioni CREATE DATABASE o ALTER DATABASE.
Sicurezza e incolumità
RISCHIO: LOWdb.opt è un file di testo minuscolo e passivo senza contenuto eseguibile, quindi non rappresenta alcun rischio diretto per la sicurezza. Le precauzioni pratiche sono operative: non modificare a mano o eliminare db.opt su un server MySQL attivo - cambia il set di caratteri/collation di un database con ALTER DATABASE in modo che il server rimanga coerente; e quando copi un database MyISAM precedente alla versione 8.0 tramite i suoi file grezzi, sposta db.opt insieme alla directory del database in modo che i suoi valori predefiniti non vadano persi. Su MySQL 8.0+ non esiste affatto db.opt, quindi la sua assenza in una directory di dati più recente è normale, non un problema.
Dettagli del formato
in sintesi- File generico di 'opzioni/impostazioni' (.opt) - Molti programmi non correlati usano .opt per le proprie opzioni/configurazione; al di fuori di MySQL l'estensione significa solo un file di impostazioni di un'applicazione.
- Opzioni Origin (OriginLab) / DVD .OPT / file template - Alcuni strumenti (es. OriginLab, certi software di authoring DVD) usano .opt per i propri dati; aperti solo dal software di origine, non correlati a MySQL.
Programmi che aprono file OPT
Dettagli tecnici
specifiche approfondite| Nome file fisso | Sempre denominato db.opt; l'estensione .opt non appare indipendentemente - il file è identificato dal suo nome fisso e dalla posizione della directory, non solo dalla sua estensione |
| Formato file | File di configurazione chiave=valore in testo semplice; nessuna struttura binaria o intestazione |
| Codifica | ASCII / UTF-8, senza byte-order mark |
| Dimensione tipica del file | Meno di 100 byte - solitamente esattamente due righe di testo |
| Impostazioni memorizzate | Esattamente due direttive: default-character-set=<charset> e default-collation=<collation> |
| Posizione del file | Un db.opt per database, all'interno della sottodirectory di quel database sotto la directory dei dati di MySQL (es. /var/lib/mysql/<dbname>/db.opt su Linux) |
| Creato da | Server MySQL automaticamente su CREATE DATABASE; aggiornato anche da ALTER DATABASE … CHARACTER SET … COLLATE … |
| Ambito delle impostazioni | Impostazioni predefinite per database, ereditate da nuove tabelle e colonne a meno che non vengano sovrascritte a livello di tabella o colonna |
| Supporto versione MySQL | Presente in MySQL dalla 3.x alla 5.7; rimosso completamente in MySQL 8.0 (2018) |
| Motivo della rimozione | MySQL 8.0 ha sostituito i metadati basati su file con un dizionario di dati transazionali memorizzato in InnoDB, eliminando i file db.opt e .frm |
| Tipo MIME | text/plain |
| Sistemi operativi | Linux, Windows, macOS - qualsiasi piattaforma che esegua MySQL Server 5.7 o versioni precedenti |
| Modifica diretta | Visualizzabile con qualsiasi editor di testo semplice; la modifica manuale non è supportata e può causare incoerenze di charset/collation tra il file e lo stato interno del server |
| Sostituito da | Tabella del dizionario dati MySQL mysql.schemata (basata su InnoDB), che memorizza default_character_set_name e default_collation_name per schema |
| Rilasciato | Early MySQL (db.opt has existed for many MySQL versions in MyISAM/legacy data directories) |
| Ultima versione | Used up to MySQL 5.7; REMOVED in MySQL 8.0 (2018) when metadata moved into the transactional data dictionary |
| Specifica | dev.mysql.com |
Conversioni OPT
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file OPT.