Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie speichert MySQL Daten?

Diese Frage ist ein bisschen alt, aber ich habe mich entschieden, sie trotzdem zu beantworten, da ich ein wenig darüber gegraben habe. Meine Antwort basiert auf dem Linux-Dateisystem. Grundsätzlich speichert mySQL Daten in Dateien auf Ihrer Festplatte. Es speichert die Dateien in einem bestimmten Verzeichnis, das die Systemvariable "datadir" hat. Öffnen eines mysql Console und Ausführen des folgenden Befehls wird Ihnen genau sagen, wo sich der Ordner befindet.

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

Wie Sie dem obigen Befehl entnehmen können, befand sich mein „datadir“ in /var/lib/mysql/ . Der Speicherort des "datadir" kann in verschiedenen Systemen variieren. Das Verzeichnis enthält Ordner und einige Konfigurationsdateien. Jeder Ordner stellt eine MySQL-Datenbank dar und enthält Dateien mit Daten für diese spezifische Datenbank. Unten ist ein Screenshot des "datadir"-Verzeichnisses in meinem System.

Jeder Ordner im Verzeichnis repräsentiert eine MySQL-Datenbank. Jeder Datenbankordner enthält Dateien, die die Tabellen in dieser Datenbank darstellen. Es gibt zwei Dateien für jede Tabelle, eine mit einem .frm Erweiterung und die andere mit einer .idb Verlängerung. Siehe Screenshot unten.

Die .frm Tabellendatei speichert das Format der Tabelle. Details:MySQL .frm-Dateiformat

Die .ibd file speichert die Daten der Tabelle. Details:InnoDB File-Per-Table-Tablespaces

Das ist es Leute! Ich hoffe, ich habe jemandem geholfen.