2016-05-26 13 views
0

Ich bin eine MYSQL DB von einem Host zum anderen migrieren, so laufe ich den folgenden Befehl die DB vom alten Hosting-Backup:Migration von MySQL-Datenbank, ohne zu verlieren Aufzeichnungen

mysqldump -u **** -p **** | gzip > /home/***/***.sql.gz 

Und dann den folgenden Befehl verwenden Um die Datenbank auf den neuen Host zu importieren:

zcat /home/***/***.sql.gz | mysql -u *** -p *** 

Nach erfolgreichem Importieren der DB, zeige ich die Domäne auf den neuen DNS. Das Problem ist, dass die Website aktiv ist, so dass neue Datensätze höchstwahrscheinlich nach der letzten Sicherung eingefügt werden. Daher muss ich den Befehl möglicherweise nach der vollständigen DNS-Weiterleitung erneut ausführen.

Also, meine Frage, fügt der mysql Befehl die neuen Zeilen ein und aktualisiert die vorhandenen oder lässt es tatsächlich die Tabellen völlig fallen und beginnt mit der Sicherung neu? Wenn das passiert, können die Datensätze, die nach der DNS-Propagierung eingefügt wurden, verloren gehen!

Dank

Antwort

1

Wenn Sie am Ausgang des mysqldump aussehen (bevor Sie es gzip) Sie werden sehen, dass es eine Folge von

So
DROP TABLE x; 
CREATE TABLE x (...); 
INSERT INTO x (...) VALUES (...); 

enthält, nein, es nicht tun, ein Insert/Ersetzen, löscht und erstellt die Tabellen neu.

+0

Ich habe eine Option gefunden, um dieses Verhalten '--skip-add-drop-table' zu ​​vermeiden. Danke für Ihre Nachricht! –

Verwandte Themen