Sto usando il database MySQL e sto usando una macchina Ubuntu Linux.
Il mio database denominato db_test
, ho notato che sotto il percorso /var/lib/mysql/db_test
, ci sono file un suffisso con .frm
, .MYD
, .MYI
come segue:
/var/lib/mysql/db_test# ls
cars.frm
cars.MYD
cars.MYI
customers.frm
customers.MYD
customers.MYI
departments.frm
departments.MYD
departments.MYI
...
Sembra ogni .frm
, .MYD
, .MYI
gruppo file mappato con una tabella nel database.
Ho le seguenti due domande da porre:
Cosa stanno facendo esattamente i tre file?
Se creo una nuova directory sotto il percorso
/var/lib/mysql/
diredb_test_2
, e copio tutti i file dalladb_test_1
directory indb_test_2
, creerà anche un nuovo databasedb_test_2
che ha esattamente lo stesso contenuto (tabelle) didb_test_1
's?
Questa azione di spostamento dei file del database fisico crea lo stesso risultato delle seguenti azioni della riga di comando:
il dump del database
db_test_1
fuoricreare un nuovo database
db_test_2
quindi scaricare
db_test_1
nuovamente il database nel nuovo databasedb_test_2
?
In tal caso, sembra che lo spostamento dei file sia molto più veloce rispetto all'utilizzo mysqldump
per copiare database (o per importare dati da un DB a un altro DB in MySQL). Qualche opinione su questo?
mysqldump
mio db in meno di 2 secondi. Il ripristino è la parte lenta, che richiede 5-10 minuti.