Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Sicherung und -Wiederherstellung über die Befehlszeile

Fügen Sie den "--routines"-Parameter für mysqldump hinzu und es wird die Prozeduren ausgeben.

EDIT #1:Ihr mysqldump-Befehl sollte jetzt so aussehen:

mysqldump -u root -proot --routines Data1 > Datafile.mysql

BEARBEITEN #2:
Sie müssen auch den Schalter --add-drop-table hinzufügen, wenn Sie Ihre Ansichten beibehalten möchten. Der Grund dafür ist, dass Ansichten in zwei Schritten erstellt werden (zuerst als Dummy-Tabellen, dann als echte Ansichten). Bitte beachten Sie auch, dass Tabellen und Ansichten denselben Namensraum verwenden, lassen Sie sich also nicht von der Ausgabe des Befehls „Show Tables“ im mysqlclient in die Irre führen. Verwenden Sie stattdessen "Show Create View vw_test", wenn dieser Befehl Ihnen die Create View-Abfrage und dann Bingo zeigt, auch um sicherzustellen, dass die Ansichten korrekt wiederhergestellt wurden, fügen Sie einige Daten in die relevanten Tabellen in Ihrer anderen Datenbank ein und führen Sie dann eine Auswahlabfrage für die aus Sehen Sie, wenn die Daten binden, dann treffen Sie ins Schwarze, klopfen Sie sich auf die Schulter :) Ansonsten können Sie jederzeit zu dieser wunderbaren Community bei Stackoverflow zurückkehren.

Ihr mysqldump-Befehl sollte also (um die Ansichten beizubehalten) jetzt so aussehen

mysqldump -u root -proot --routines --add-drop-table Data1 > Datafile.mysql

HTH