Ich verwende eine MySQL-Datenbank und einen Ubuntu Linux-Computer.
Meine Datenbank mit dem Namen db_test, merke ich , dass unter dem Pfad /var/lib/mysql/db_testgibt es Dateien Suffix mit .frm, .MYD, .MYIwie folgt vor :
/var/lib/mysql/db_test# ls
cars.frm
cars.MYD
cars.MYI
customers.frm
customers.MYD
customers.MYI
departments.frm
departments.MYD
departments.MYI
...
Scheint jeden .frm, .MYD, .MYIDateien Gruppe mit einer Tabelle in der Datenbank abgebildet.
Ich habe zwei Fragen zu stellen:
Was genau machen die drei Dateien?
Wenn ich ein neues Verzeichnis unter Pfad erstellen
/var/lib/mysql/sagendb_test_2, und kopieren Sie alle Dateien ausdb_test_1Verzeichnisdb_test_2, wird es auch eine neue Datenbank erstellen ,db_test_2die exakt den gleichen Inhalt (Tabellen) wie hatdb_test_1‚s?
Erzeugt diese Aktion zum Verschieben von Datenbankdateien physisch dasselbe Ergebnis wie die folgenden Befehlszeilenaktionen:
Dump die Datenbank
db_test_1ausErstellen Sie eine neue Datenbank
db_test_2dann werfen Sie das
db_test_1in die neue Datenbank - Datenbank zurückdb_test_2?
In diesem Fall scheint das Verschieben von Dateien viel schneller mysqldumpzu sein als das Kopieren von Datenbanken (oder das Importieren von Daten von einer Datenbank in eine andere Datenbank in MySQL). Irgendwelche Meinungen dazu?
mysqldumpmeine Datenbank in weniger als 2 Sekunden. Das Wiederherstellen ist der langsame Teil, der 5-10 Minuten dauert.