2012-04-11 9 views
1

Ich wollte eine zweite Meinung über die unten erhalten.Dump MySQL-Datenbank in eine neue Datenbank auf einem anderen Server

Was ich versuche zu erreichen ist, eine MySQL-Datenbank auf eine neue Datenbank auf einem anderen Server zu dumpen, ich wollte es auch mit begrenzten Schreiben auf den ursprünglichen Server tun.

Der Plan ist, die alte mysql-Datenbank auszugeben und die Ausgabe in die neue Datenbank auf dem zweiten Server zu importieren.

Hier ist, was ich habe, ich habe es so gemacht, dass in der Theorie der ursprüngliche Server nur einen Lesevorgang machen wird, wo der neue Server den Schreibvorgang machen wird.

mysqldump -uAUSER -p'APASS' dbname | ssh [email protected] mysql -uAUser -p'APASS' newdbname 

Vielen Dank!

+1

das sollte gut funktionieren, obwohl es das db-dump ist big ftp/sftp es wahrscheinlich eine bessere option (obwohl es schreiben erfordern würde der Quellserver) – scibuff

+1

Vielleicht die Option -C zu ssh, um die Kopie auf den Server zu beschleunigen (da die Dump-Datei ist Text) – dsummersl

+0

Danke Jungs, @dsummersl Ich habe -C hinzugefügt. Ich habe es abgeschossen und es scheint sehr glücklich zu sein. – adamtor45

Antwort

0

Es kann funktionieren, aber es ist riskant.

Ich würde Ihnen raten, mysqldump in eine Datei, kopieren Sie die Datei mit scp, dann mysql < file auf dem Zielserver. Das gibt Ihnen ein paar Neustartpunkte, wenn etwas (wie eine Übertragung über das Netzwerk) fehlschlägt.

Es gibt Ihnen auch eine Dateisicherung Ihrer db, die später nützlich sein könnte.

0

Sie mysqldump-Befehl können Daten von einer Live-Datenbank zu einer Slave-Datenbank

mysqldump -u [Benutzername] h [Hostname] --password = [Kennwort] [live_db_name] dump | mysql -u [benutzername] -h [hostname] --password = [passwort] [slave_db_name]