ALIs

kommt noch

Export-/Import mit phpMyAdmin(MySQL)

Das Leibniz-Rechenzentrum betreibt einen MySQL-Server, der insbesondere für die Nutzer von virtuellen Webservern gedacht ist. Web-Anwendungen setzen häufig eine so genannte xAMP-Architektur voraus, d.h. ein System mit einem Apache-Webserver, einem MySQL-Datenbankserver sowie der Skriptsprache PHP (das „x“ in „xAMP“ steht für die Plattform, z.B. „L“ wie Linux oder „W“ wie Windows). Mit dem Aufbau eines MySQL-Servers steht nun auch die letzte noch fehlende Komponente für xAMP-Anwendungen zur Verfügung.

Datenexport mit phpMyAdmin

Zum Import und Export von Daten steht das Programm phpMyAdmin zur Verfügung.
Zugangswege: Das Programm ist unter

phpmyadmin.lrz-muenchen.de

phpmyadmin.lrz-münchen.de

phpmyadmin.lrz.de

erreichbar.

phpmyadmin logon-screen

Die Anmeldung erfolgt mit Benutzername und Kennwort.


phpmyadmin export1

Die Exportfunktion ist über den Startbildschirm erreichbar.


phpmyadmin export2

PhpMyAdmin bietet eine Exportfunktion, die entweder auf Datenbank- oder auf Tabellenebene anwendbar ist. Es wird eine Datei mit der Endung .sql erstellt. Um die Dateien auf die lokale Festplatte zu übernehmen, ist es wichtig, dass der Haken bei Senden markiert ist.

Die Zeilen CREATE DATABASE <Schemaname> und USE <Schemaname> müssen vor dem Import aus der SQL-Datei gelöscht werden, da die Benutzer keine Rechte zum Anlegen eines Schema haben.

Import von Tabellendefinitionen inklusive Tabelleninhalten


Export mit mysqldump

Mysqldump schreibt sowohl die Datendefinitionen als auch die Tabelleninhalte in eine Datei. Das Programm ist Bestandteil der MySQL-Distribution.

mysqldump -u<Benutzername> -p<Passwort> [-h<Hostname>] --opt <Schema> > <Verzeichnis>/<Dateiname> .sql

Die Datei kann ohne weitere Bearbeitung nach phpMyAdmin übernommen werden.

Import von Tabellendefinitionen inklusive Tabelleninhalten


Export mit MySQL Administrator 1.0.18

Eine lokale Datenbank kann mit dem MySQL-Administrator exportiert werden und anschließend mit phpMyAdmin auf den Server des LRZ übertragen werden.

mysql administrator1

Für den Export wählt man Backup. Nach Angabe des Projektnamens und Auswahl der zu exportierenden Datenbank kann die gesamte Datenbank bzw. eine oder mehrere Tabellen inklusive Inhalte exportiert werden.


mysql administrator2

Unter Advanced Options können die Eigenschaften des Backups genauer definiert werden. Lock all Tables garantiert, dass während des Backups keine Schreibzugriffe auf die Tabellen stattfinden. Complete INSERTs verwendet das vollständige Insertstatement (mit Spaltennamen). Execute Backup Now fragt nach dem Speicherort und startet die Sicherung. Das Ergebnis ist eine Datei mit SQL-Befehlen.

Der Zeichensatz der Datei ist UTF8. Vor der übergabe an phpMyAdmin muss die Datei mit einem Editor (z.B. Microsoft-Editor) in eine ANSI-Datei umgewandelt und Kommentare, die ein "&" enthalten, am Anfang und am Ende entfernt werden.

Auch die Zeilen CREATE DATABASE <Schemaname> und USE <Schemaname> müssen gelöscht werden, da die Benutzer keine Rechte zum Anlegen eines Schema haben.

Import von Tabellendefinitionen inklusive Tabelleninhalten


Export mit MySQL Control Centrum 0.9.2-beta

Tabellendefinitionen

mysql control center tabellen1

Zuerst muss das gewünschte Schema markiert werden. über die rechte Maustaste gelangt man zu den Werkzeugen (Tools). Show Create liefert die gewünschten Informationen.


mysql control center tabellen2

Entweder man wählt nur einzelne Tabellen oder alle Tabellen (Shift). Execute schreibt die Datendefinitionen der Tabellen. Die Inhalte der Tabellen werden nicht über diese Funktion ausgegeben.


mysql control center tabellen3

Schließlich muss das Ergebnis noch gespeichert werden. Es werden nur die Tabellendefinitionen gespeichert, keine Inhalte.

Die Datei kann ohne weitere Bearbeitung nach phpMyAdmin übernommen werden.

Import von Tabellendefinitionen


Tabelleninhalte

mysql control center tabelleninhalte1

Die Inhalte einer Tabelle werden nach Auswahl der Tabelle mit der rechten Maustaste ausgegeben.


mysql control center tabelleninhalte2

Für den Import in phpMyAdmin müssen sämtliche Kommentare und auch die Spaltennamen mit einem Editor aus der Exportdatei entfernt werden.

Import von Tabelleninhalten


Export aus Datenbanksystemen anderer Hersteller

SQL ist nicht gleich SQL. Der SQL-Standard untergliedert sich in SQL1 (ISO/IEC 9075:1987 mit Erweiterung ISO/IEC 9075:1989), SQL92 (ISO/IEC 9075:1992), SQL99 (ISO/IEC 9075:1999) und SQL2003 (ISO/IEC JTC1/SC32/WG3). Einerseits wurden die Standards in die Datenbankserver noch nicht vollständig übernommen und zudem haben die Hersteller an eigenen Erweiterungen gearbeitet. Es ist also nach dem Import in MySQL zu prüfen, ob die gewünschte Funktionalität noch gegeben ist.

Relationen, einschließlich der Regeln zur Sicherstellung der referentiellen Integrität, gehen beim Export nach MySQL verloren.


Export mit Microsoft Access

Access gestattet es nicht Tabellendefinition ohne die Verwendung von ODBC zu exportieren. Jedoch können Tabelleninhalte in einer Textdatei gespeichert werden.

microsoft access

Nach dem öffnen der Datenbank können die Tabelleninhalte mit der rechten Maustaste in eine Textdatei übernommen werden.

Import von Tabelleninhalten


Export mit Oracle9i

Tabellendefinitionen

Hierzu dient das Kommandozeilenprogramm. Folgende Eingabe in der Kommandozeile führt einen Export auf Benutzerebene aus.

exp userid=<Benutzername>/<Kennwort> file=<Dateiname> owner=<Eigentümer>


über das Importprogramm gelangt man zu den Tabellendefinitionen.

imp userid=<Benutzername>/<Kennwort> file=<Dateiname> show=y full=y log=<Dateiname>

Aus dieser Datei müssen alle Zeilen, außer den Zeilen die CREATE-Statements enthalten, gelöscht werden. Auch Oraclespezifische Einträge wie "PCTFREE 10 PCT" USED 40 INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST " GROUPS 1)" sind zu entfernen.

Hinweise:
MySQL kennt den Datentyp VARCHAR2 nicht. Dafür muss VARCHAR verwendet werden.
Für NUMBER existiert in MySQL der Datentyp INTEGER.

Import von Tabellendefinitionen


Tabelleninhalte

Zu den Tabelleninhalten gelangt man über
Datenbankinstanz -> Schema -> Benutzer -> Tabellen -> <Tabellenname&gt.

oracle export1

Die Inhalte der Tabellen können über die Enterprise Manager Console in eine CSV-Datei geschrieben werden.


oracle export2

Zeilen die Spaltennamen enthalten sowie Zeilen ohne Nutzinformationen müssen entfernt werden.

Import von Tabelleninhalten


Löschen der Tabellen mit phpMyAdmin

Tabellendefinitionen und -Inhalte werden nicht überschrieben und müssen deshalb vor dem Import entfernt werden.

phpmyadmin tabellen entfernen

Zum Löschen aller Tabellen müssen diese zuerst ausgewählt werden.


Löschen der Tabelleninhalte mit phpMyAdmin

phpmyadmin tabellen leeren

Inhalte aller Tabellen werden nach Auswahl aller Tabellen über "Leeren" entfernt.


Import von Tabellendefinitionen inklusive Tabelleninhalten

Für den Import ganzer Schemata und/oder Tabelleinhalten bietet das LRZ phpMyAdmin. Nach Auswahl der Funktion öffnet sich ein Fenster für die Eingabe der Datei.

phpmyadmin import alles

Die generierten SQL-Dateien können mit phpMyAdmin importiert werden. Nach Auswahl des Schema kann die SQL-Datei importiert werden. PhpMyAdmin bietet dafür zwei Möglichkeiten. Für den Import einer Datei über phpMyAdmin existiert zusätzlich im linken Frame ein Button SQL. Dahinter verbirgt sich die Importfunktion. Es können SQL-Skripte importiert werden.


import erfolgreich

PhpMyAdmin quittiert die erfolgreiche Ausführung.


Import von Tabellendefinitionen

phpmyadmin import tabdef

Nach Auswahl des Schema kann die SQL-Datei importiert werden. PhpMyAdmin bietet dafür zwei Möglichkeiten


import erfolgreich

PhpMyAdmin quittiert die erfolgreiche Ausführung.


Import von Tabelleninhalten

phpmyadmin import tabinhalt1


phpmyadmin import tabinhalt2

Zuerst Tabelle auswählen und dann mit Inhalt füllen. Tabelleninhalte lassen sich auch im CSV-Format einspielen (Textdatei in Tabelle einfügen). Nach Angabe des Pfades sowie des Namens der Datei und Betätigung des OK-Buttons werden die Daten geladen.