MySQL veritabanı kullanıyorum ve bir Ubuntu Linux makinesi kullanıyorum.
Adlı Benim veritabanı db_test, ben yolu altında olduğunu fark /var/lib/mysql/db_test, dosyalar vardır ile soneki .frm, .MYD, .MYIaşağıdaki gibi:
/var/lib/mysql/db_test# ls
cars.frm
cars.MYD
cars.MYI
customers.frm
customers.MYD
customers.MYI
departments.frm
departments.MYD
departments.MYI
...
Her görünüyor .frm, .MYD, .MYIdosyalar grup veritabanında bir tabloyla eşlenen.
Sorulacak iki sorum var:
Üç dosya tam olarak ne yapıyor?
Ben yolun altında yeni bir dizin oluşturursanız
/var/lib/mysql/söz hakkındandb_test_2ve her dosyayı kopyalamakdb_test_1için dizinedb_test_2, o da yeni bir veritabanı yaratacakdb_test_2tamamen aynı içeriği (tablolar) sahiptirdb_test_1's?
Bu fiziksel olarak hareket eden veritabanı dosyaları eylemi aşağıdaki komut satırı eylemleriyle aynı sonucu yaratır mı?
veritabanını
db_test_1boşaltyeni bir veritabanı oluştur
db_test_2sonra
db_test_1yeni veritabanına geri veritabanı dökümüdb_test_2?
Öyleyse, dosyaları taşımak mysqldump(veya MySQL'de bir DB'den başka bir DB'ye veri almak) için dosyaları taşımaktan çok daha hızlı görünüyor . Bu konuda herhangi bir görüşünüz var mı?
mysqldump2 saniyenin altında benim db yapabilirsiniz . Geri yükleme 5-10 dakika süren yavaş kısımdır.