Migration einer MySQL Datenbank zu einem neuen Server

Hallo,


Dieser Artikel soll euch einen schnellen Weg zeigen, wie Ihr eure MySQL Instance auf einen neuen Server verlagern koennt.


Was wird gebraucht?

MySQL Server auf dem neuen Host (mariadb-server-*)

MySQL Server auf dem alten Host (mariadb-server-*)

Access via shell (ssh oder direkt Konsole)


Zuerst wird auf den alten Host connected und dann der MySQL Server gestoppt. Dann der folgende Code ausgefuehrt:

mysqldump --all-databases --skip-extended-insert --order-by-primary -u root -p > oldserver.sql

Die Kommandozeile wird nach dem MySQL root Password fragen. Nach dem eingeben wird eine Datei erstellt mit Namen "oldserver.sql".


Wenn erledigt, dann kopiere die Datei zum neuen Host und logge dich in die datenbank ein via sudo mysql -u root -p und gib das Passwort ein.

Wenn dann erfolgreich verbunden, nutze das Kommando source um die SQL Datei in die Datei zu "sourcen". Dies importiert die Datenbank in die neue Instanz.

Beispiel: source /home/aebian/oldserver.sql



Achtung: Bitte sicherstellen das die Verbindung zum Server stabil ist, da bei großen Datenbanken der Import sehr lange dauern kann. Alternativ kann tmux verwendet werden um die Verbindung "ab zusichern".

Wenn dann der import erfolgt ist, ist die Datenbank erfolgreich auf dem neuen Host startklar.


Zusatz (by seegras

Datenbanken mit gzip komprimieren z.B. die Datenbank sehr groß ist.

mysqldump -uUSER -p mydatabase1 | gzip -c > my-mysql-dump.sql.gz

Auf dem Zielserver wird das Archiv dann entweder erst entpackt und dann importiert oder man macht das wieder mit ner Pipe

gzip -c my-mysql-dump.sql.gz | mysql -uUSER -p mydatabase1

Navigation

  1. Forum
  2. Blog
    1. Artikel
  3. Ticketsystem
  4. Shop
  5. Forenregeln
  6. Merchandise
  7. Discord
  1. Dashboard
  2. Nutzungsbedingungen
  3. Datenschutzerklärung
  4. Impressum

Aktueller Ort

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen.