sql >> Databáze >  >> RDS >> Mysql

Jak MySQL ukládá data

Tato otázka je trochu stará, ale přesto jsem se rozhodl na ni odpovědět, protože jsem v tom něco hledal. Moje odpověď je založena na souborovém systému linux. MySQL v podstatě ukládá data do souborů na vašem pevném disku. Ukládá soubory do specifického adresáře, který má systémovou proměnnou "datadir". Otevření mysql konzole a spuštění následujícího příkazu vám přesně řekne, kde se složka nachází.

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

Jak můžete vidět z výše uvedeného příkazu, můj "datadir" byl umístěn v /var/lib/mysql/ . Umístění "datadir" se může v různých systémech lišit. Adresář obsahuje složky a některé konfigurační soubory. Každá složka představuje databázi mysql a obsahuje soubory s daty pro tuto konkrétní databázi. níže je snímek obrazovky adresáře "datadir" v mém systému.

Každá složka v adresáři představuje databázi MySQL. Každá složka databáze obsahuje soubory, které představují tabulky v dané databázi. Pro každou tabulku jsou dva soubory, jeden s .frm a druhý s .idb rozšíření. Viz snímek obrazovky níže.

.frm tabulka ukládá formát tabulky. Podrobnosti:Formát souboru MySQL .frm

Soubor .ibd soubor ukládá data tabulky. Podrobnosti:Tabulkové prostory InnoDB File-Per-Table

To je ono lidi! Doufám, že jsem někomu pomohl.



  1. Vytvořte index na obrovském produkčním stole MySQL bez zamykání tabulky

  2. Nelze se připojit k mysql s 127.0.0.1

  3. Jak rozdělím oddělený řetězec na serveru SQL bez vytvoření funkce?

  4. Převeďte datum a čas JS na datum a čas MySQL