MySQL Tabelle kopieren

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Wormi
Beiträge: 123
Registriert: 08.08.2004 09:21:03
Kontaktdaten:

MySQL Tabelle kopieren

Beitrag von Wormi » 15.08.2012 13:11:12

Hallo zusammen,

ich möchte gerne eine komplette Tabelle von einem anderen Server auf meinen kopieren und dort einpflegen. Dazu möchte ich mich einfach auf die andere Datenbank des entfernten Servers connecten, die Daten kopieren und auf der zweiten Datenbank einpflegen. Die möglichkeit mit mysqldump auf dem anderen Server zu arbeiten besteht zwar, jedoch soll ein Script diese Arbeit von einem anderen Server, quasi als Client" erledigen.
Ist das irgendwie möglich? Finde keine passenden Lösungsansatz....

Gruß Wormi

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: MySQL Tabelle kopieren

Beitrag von syssi » 15.08.2012 13:17:08

Hi,

du musst dir einen Weg suchen, wie du den entfernten Server ueberredest die Beschreibung der Tabelle rauszuruecken. Dazu kannst du aus der Ferne (mittels ssh) mysqldump aufrufen und den Output direkt in den mysql-Client (mysql) pipen. Damit vermeidest du, dass die Datenbank nach aussen hin verfuegbar sein muss. Wenn die Firewall deines Datenbank-Servers soweit offen ist, dass man auf Port 3306 verbinden darf, so musst du deinem MySQL-User nur noch das Recht gewaehren sich auch aus der Ferne einloggen zu duerfen. Dann wuerdest du diesmal "mysqldump" lokal starten und als Parameter den entfernten Host mitgeben. Den Output pipest du dann wieder lokal in deinen MySQL-Server.

Die große und professionelle Loesung nennt sich MySQL-Replikation.

Gruss syssi

homer65
Beiträge: 125
Registriert: 01.04.2005 16:29:26

Re: MySQL Tabelle kopieren

Beitrag von homer65 » 15.08.2012 21:50:11

mysqldump läuft doch auch auf dem Client und kann auf den Server zugreifen.

Wormi
Beiträge: 123
Registriert: 08.08.2004 09:21:03
Kontaktdaten:

Re: MySQL Tabelle kopieren

Beitrag von Wormi » 16.08.2012 07:11:05

Vielen dank für die antworten. Mir war nicht bewusst das mysqldump auf einen entfernten Server zugreifen kann, dachte das geht nur lokal.

Werde es später dann teste! Danke schon mal!

homer65
Beiträge: 125
Registriert: 01.04.2005 16:29:26

Re: MySQL Tabelle kopieren

Beitrag von homer65 » 16.08.2012 07:29:51

Ein Beispiel um eine entfernte Datenbank zu sichern:
mysqldump -h192.168.1.40 -uroot -pxxx -B myoggradio
Du mußt aber serverseitig deine my.cnf anpassen, das Verbindungen von aussen zugelassen sind.
Per Default sind sie nicht erlaubt.
Außerdem muss der Port 3306 erreichbar sein.

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: MySQL Tabelle kopieren

Beitrag von syssi » 16.08.2012 15:23:12

Deshalb der SSH-Vorschlag:

Code: Alles auswählen

ssh user@remohost mysqldump -u user -ppasswort datenbank | mysql -u user -ppasswort lokaledatenbank
Nicht verwirren lassen. Der mysqldump-Befehl wird auf dem entfernten System ausgefuehrt. Der Output wird auf dem lokalen System (per mysql) verarbeitet.

Antworten