MySQL:Im-/Export: Unterschied zwischen den Versionen
Admin (Diskussion | Beiträge) |
|||
(15 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:Datenbanken.mysql]] | |||
Zur Sicherung einer mySQL-Datenbank, z.B. auch für das Kopieren dieses Wikis, lässt sich von einer bestehenden Datenbank ein Dump erstellen, der sich bei einer anderen Datenbank wieder einspielen lässt. Sowohl der Import, als auch der Export kann auf verschiedene Weisen geschehen. Einige davon werden hier, nach der Richtung der Daten differenziert, gezeigt. | Zur Sicherung einer mySQL-Datenbank, z.B. auch für das Kopieren dieses Wikis, lässt sich von einer bestehenden Datenbank ein Dump erstellen, der sich bei einer anderen Datenbank wieder einspielen lässt. Sowohl der Import, als auch der Export kann auf verschiedene Weisen geschehen. Einige davon werden hier, nach der Richtung der Daten differenziert, gezeigt. | ||
== Export == | == Export == | ||
=== Per Kommandozeile === | |||
<source lang="text"> | |||
mysqldump --all-databases -u root -p > sqldump.sql | |||
</source> | |||
Durch Hinzufügen des Parameters ''--xml'' lässt sich eine XML-Datei erzeugen, die evtl. von anderen Datenbanken besser verarbeitet werden kann. | |||
=== Per mySQLAdmin === | |||
Im Idealfall hat man das Tool [http://www.mysql-admin.org/ mySQLAdmin] auf dem Server installiert. | |||
Dazu benötigt man einen Webserver (z.B. [http://httpd.apache.org/ Apache]) und einen [http://www.php.net/ PHP]-Interpreter. Das Einrichten des Apache-Servers unter Ubuntu habe ich unter [[Linux:Apache-Server]] beschrieben. | |||
== Import == | == Import == | ||
=== Per Kommandozeile === | |||
Der Import funktioniert über die Kommandozeile folgendermaßen: | Der Import funktioniert über die Kommandozeile folgendermaßen: | ||
<source lang="bash"> | <source lang="bash"> | ||
mysql -u benutzer -p import_datenbank < sqldump.sql | |||
</source> | </source> | ||
Zeile 21: | Zeile 32: | ||
:; < | :; < | ||
:: Richtung: in die Datenbank | :: Richtung: in die Datenbank | ||
:; | :; sqldump.sql | ||
:: Die exportierten Daten, die nun importiert werden sollen | :: Die exportierten Daten, die nun importiert werden sollen | ||
== Import von CSV == | |||
<source lang="bash"> | |||
mysql -e "LOAD DATA INFILE '<vollständiger Dateipfad>' INTO TABLE <Tabellenname> | |||
FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\n'" | |||
<Datenbank> -u <Datenbanknutzer> -p | |||
</source> |
Aktuelle Version vom 23. April 2016, 09:54 Uhr
Zur Sicherung einer mySQL-Datenbank, z.B. auch für das Kopieren dieses Wikis, lässt sich von einer bestehenden Datenbank ein Dump erstellen, der sich bei einer anderen Datenbank wieder einspielen lässt. Sowohl der Import, als auch der Export kann auf verschiedene Weisen geschehen. Einige davon werden hier, nach der Richtung der Daten differenziert, gezeigt.
Export
Per Kommandozeile
mysqldump --all-databases -u root -p > sqldump.sql
Durch Hinzufügen des Parameters --xml lässt sich eine XML-Datei erzeugen, die evtl. von anderen Datenbanken besser verarbeitet werden kann.
Per mySQLAdmin
Im Idealfall hat man das Tool mySQLAdmin auf dem Server installiert. Dazu benötigt man einen Webserver (z.B. Apache) und einen PHP-Interpreter. Das Einrichten des Apache-Servers unter Ubuntu habe ich unter Linux:Apache-Server beschrieben.
Import
Per Kommandozeile
Der Import funktioniert über die Kommandozeile folgendermaßen:
mysql -u benutzer -p import_datenbank < sqldump.sql
Die Parameter lauten:
- -u benutzer
- Es wird der Benutzer benutzer verwendet
- -p
- Es wird nach dem Passwort des Benutzers gefragt, könnte man hier auch gleich mit angeben
- datenbank
- Die Datenbank in die man zu importieren gedenkt
- <
- Richtung: in die Datenbank
- sqldump.sql
- Die exportierten Daten, die nun importiert werden sollen
Import von CSV
mysql -e "LOAD DATA INFILE '<vollständiger Dateipfad>' INTO TABLE <Tabellenname>
FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\n'"
<Datenbank> -u <Datenbanknutzer> -p