MySQL-Server per SSH umziehen

Wie man einzelne MySQL-Datenbanken von einem Server auf einen anderen schaufelt, ist sicherlich fast jedem bekannt, der etwas mit MySQL-Datenbanken zu tun hat. Aber was macht man, wenn man einen kompletten MySQL-Server von einer Maschine auf eine andere umziehen will? Mit der Frage wurde ich gerade auf Arbeit konfrontiert und bin auf diesen Eintrag gestoßen.

MySQL-Server umziehen

Klar kann man jede MySQL-Datenbank einzelnd dumpen und auf die neue Kiste einspielen, doch das kann eine ganz schön langwierige Arbeit werden. Einfacher und sicherer (da verschlüsselt) kann man das ganze mit SSH und dem mysqldump-Befehl erledigen. Hierzu genügt ein einfaches

mysqldump --extended-insert --force --log-error=log.txt -uBenutzer -pPasswort --all-databases | ssh -C benutzer@neuerServer "mysql -uBenutzer -pPasswort"

Hierbei muss man lediglich Benutzernamen, Passwörter und die IP-Adresse bzw. Hostname des neuen Servers abändern. Etwaige Fehler werden in der Datei log.txt protokolliert. Bevor man den Server umzieht, sollte man jedoch den (Quell-)MySQL-Server auf read-only stellen, damit unvorhergesehene Schreibzugriffe nicht zu Inkonsistenzen führen.

Veröffentlicht am 16.12.2009

1 Kommentar

  • Bernhard schrieb am 27. März 2012

    Vielleicht noch meine 2cent dazu. Wichtig erscheint mir noch der Parameter ‘–default-charset-set’, der bei unterschiedlichen Locales zum Datensalat führt.
    Normalerweise latin1, wenn nur deutsch, utf8 bei international.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>