Mysql DB von Windows nach Linux dumpen?

Mysql DB von Windows nach Linux dumpen?

am 19.01.2006 15:33:42 von Jan van Banden

Hallo zusammen,

ich versuche gerade eine portation einer Mysql-Datenbank von einem
Win2k3Server zu einem SUSE 9.3 System.
Ich habe allerdings das Problem, dass ich nicht weiss wie man an der bash
eine komplette DB wieder importiert.

Bisher habe ich über mysqldump -hUSER -p --opt > c:\sql\exportfile.sql
einen Dump erstellt. Wie lese ich diesen an der BASH/SHELL wieder ein?

Ich finde nur
LOAD DATA INFILE 'c:\sql\exportfile.sql'
INTO TABLE tabelle

Ich will aber die ganze DB haben und nicht nur einzelene Tabellen.

Gruß
JvB


PS: Ein direktes überspielen der Mysql Files (*.frm, *.myi, *.myd)
funktioniert teilweise: Die Struktur ist da nur bei einer Abfrage findet er
die Tabelle nicht.

Re: Mysql DB von Windows nach Linux dumpen?

am 19.01.2006 15:40:50 von Christian Kirsch

Jan van Banden schrieb:
> Hallo zusammen,
>
> ich versuche gerade eine portation einer Mysql-Datenbank von einem
> Win2k3Server zu einem SUSE 9.3 System.
> Ich habe allerdings das Problem, dass ich nicht weiss wie man an der bash
> eine komplette DB wieder importiert.
>
> Bisher habe ich über mysqldump -hUSER -p --opt > c:\sql\exportfile.sql

Dein host heißt USER?

> einen Dump erstellt. Wie lese ich diesen an der BASH/SHELL wieder ein?
>

mysql -u user -p -h host < exportfile



>
> PS: Ein direktes überspielen der Mysql Files (*.frm, *.myi, *.myd)
> funktioniert teilweise: Die Struktur ist da nur bei einer Abfrage findet er
> die Tabelle nicht.

mysqldump ist vermutlich geeigneter, wenn sich die MySQL-Versionen
unterscheiden.

Re: Mysql DB von Windows nach Linux dumpen?

am 19.01.2006 15:49:57 von Jan van Banden

Am Thu, 19 Jan 2006 15:40:50 +0100 schrieb Christian Kirsch:

>> Bisher habe ich über mysqldump -hUSER -p --opt > c:\sql\exportfile.sql
> Dein host heißt USER?

vertipt nochmal: Es fehlt natürlich die Angabe zur DB und das h sollte ein
u sein. Sorry.

mysqldump DATENBANK -uUSER -pPWD -hHOST --opt > c:\sql\exportfile.sql


> mysql -u user -p -h host < exportfile
Ooops, direkt zweimal blöd angestellt? Trotzdem danke für die schnelle
antwort.


Gruß
JvB

Re: Mysql DB von Windows nach Linux dumpen?

am 19.01.2006 15:51:14 von NOSPAM_newsgroups

Hi

Jan van Banden schrieb:
>
> Hallo zusammen,
>
> ich versuche gerade eine portation einer Mysql-Datenbank von einem

> Ich finde nur
> LOAD DATA INFILE 'c:\sql\exportfile.sql'
> INTO TABLE tabelle

mysql < .sql

= mysql windb < dump.sql

im Verzeichnis \mysql\bin mit MS-Dos oder einer bat-Datei

hth n.Olivier
--
Nachbagauer Olivier
Technologiezentrum Freilassing
D-83395 Freilassing
www.nOlivier.com
www.Reedb.com - Immobilien Online
www.Immofinder.de

Re: Mysql DB von Windows nach Linux dumpen?

am 19.01.2006 15:59:09 von Hartmut Holzgraefe

Jan van Banden wrote:
> Hallo zusammen,
>=20
> ich versuche gerade eine portation einer Mysql-Datenbank von einem
> Win2k3Server zu einem SUSE 9.3 System.=20
> Ich habe allerdings das Problem, dass ich nicht weiss wie man an der ba=
sh
> eine komplette DB wieder importiert.
>=20
> Bisher habe ich über mysqldump -hUSER -p --opt > c:\sql\exportfile.sq=
l=20
> einen Dump erstellt. Wie lese ich diesen an der BASH/SHELL wieder ein?
>=20
> Ich finde nur
> LOAD DATA INFILE 'c:\sql\exportfile.sql'
> INTO TABLE tabelle

LOAD DATA INFILE liest nur trennzeichenseparierte Formate wie CSV,
für SQL-Importe gibt es das Kommando SOURCE

SOURCE 'c:/sql/exportfile.sql'

oder die Kommandozeile

mysql ... < 'c:\sql\exportfile.sql'

innerhalb von SQL Statements solltest Du dabei als Pfadtrenner
immer / statt \ verwenden, sonst kann es bei Pfaden wie

SOURCE 'c:\new.sql'

zu Überaschungen kommen


--=20
Hartmut Holzgraefe, Senior Support Engineer .
MySQL AB, www.mysql.com

http://www.mysql.com/support/

Re: Mysql DB von Windows nach Linux dumpen?

am 19.01.2006 17:01:44 von Christian Kirsch

Jan van Banden schrieb:
> Am Thu, 19 Jan 2006 15:40:50 +0100 schrieb Christian Kirsch:
>
>>> Bisher habe ich über mysqldump -hUSER -p --opt > c:\sql\exportfile.sql
>> Dein host heißt USER?
>
> vertipt nochmal: Es fehlt natürlich die Angabe zur DB und das h sollte ein
> u sein. Sorry.
>
> mysqldump DATENBANK -uUSER -pPWD -hHOST --opt > c:\sql\exportfile.sql
>
>
>> mysql -u user -p -h host < exportfile
> Ooops, direkt zweimal blöd angestellt? Trotzdem danke für die schnelle
> antwort.
>

Der kurze Weg ist übrigens
mysqldump -h windowshost -u ... | mysql -u ...

von Linux aus.