sql >> Databasteknik >  >> RDS >> Mysql

Hur lagrar MySQL data

Den här frågan är lite gammal men jag bestämde mig för att svara på den ändå eftersom jag har grävt lite kring densamma. Mitt svar är baserat på linux-filsystemet. I princip lagrar mySQL data i filer på din hårddisk. Den lagrar filerna i en specifik katalog som har systemvariabeln "datadir". Öppna en mysql console och kör följande kommando kommer att berätta exakt var mappen finns.

mysql>  SHOW VARIABLES LIKE 'datadir';
+---------------+-----------------+
| Variable_name | Value           |
+---------------+-----------------+
| datadir       | /var/lib/mysql/ |
+---------------+-----------------+
1 row in set (0.01 sec)

Som du kan se från kommandot ovan fanns min "datadir" i /var/lib/mysql/ . Platsen för "datadir" kan variera i olika system. Katalogen innehåller mappar och några konfigurationsfiler. Varje mapp representerar en mysql-databas och innehåller filer med data för den specifika databasen. nedan är en skärmdump av "datadir"-katalogen i mitt system.

Varje mapp i katalogen representerar en MySQL-databas. Varje databasmapp innehåller filer som representerar tabellerna i den databasen. Det finns två filer för varje tabell, en med en .frm förlängning och den andra med en .idb förlängning. Se skärmdump nedan.

.frm tabellfilen lagrar tabellens format. Detaljer:MySQL .frm-filformat

.ibd filen lagrar tabellens data. Detaljer:InnoDB File-Per-Table Tablespaces a>

Det är det gott folk! Jag hoppas att jag hjälpte någon.



  1. Varför tillåter MySQL grupp efter frågor UTAN aggregatfunktioner?

  2. Beräkna din SQL Server Monitoring Total Cost of Ownership

  3. Är detta en riktig lång omröstning?

  4. SQL WHERE-sats