İçe aktarma sırasında bir mysql tablosunun dökümü mevcut kayıtların yerini aldı


9

MySQLdump kullanarak bir dökümü aldım ..

mysqldump -u... -p... mydb t1 > mydb_table.sql

Sonra aynı tablo, ancak farklı kayıtları olan başka bir veritabanına dökümü ithal ..

mysql -u...-p... mydb < mydb_tables.sql

İçe aktarılan db, birincil_key 1'den 1000'e kadar kayıtlara ve dışa aktarılan db'de 5000 ila 10.000'e sahipti.

Ama ithalatta mevcut kayıtları, yani 1 ila 1000 silindi ..

Nasıl?? Neden?? Varsayılan bir davranışsa, bir dahaki sefere olmasına izin vermemek için dökümü vermek için hangi seçenekleri verebilirim ..

Yanıtlar:


12

Mysqldump varsayılan olarak tabloyu düşürür. --no-create-infoSeçeneği şöyle belirtmelisiniz :

mysqldump -u... -p... --no-create-info --skip-extended-insert mydb t1 > mydb_table.sql

Bu şekilde, yalnızca uğraşacak kesici uçlarınız olur. Kullanıldığında --skip-extended-insert, her seferinde bir satır eklenir. Bu yardım yinelenen sorunlarla ilgilenir, ancak şu şekilde içe aktarma işleminiz olacaktır:

mysql -u...-p... --force mydb < mydb_tables.sql

Bu --forceseçenek yalnızca yinelenen bir anahtarla karşılaşılması durumunda INSERT'lere devam etmek içindir. Bu durumda, rahatsız edici INSERT hatası yok sayılır ve bir sonraki INSERT'de açıklanır.


dökümü sırasında silinen verileri geri almak mümkün mü?
Arun Kumaresh
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.