MySQL-Datenbanken administrieren
Datenverwaltung

Big DataData & Storage

Ob Shared Hosting oder dedizierter Server ? ohne ein leistungsfähiges Administrations-Tool zur Verwaltung der Datenbanken geht es nicht. Einen hervorragenden Ruf in diesem Bereich genießt das Tool PhpMyAdmin.

Der Klassiker

MySQL-Datenbanken administrieren

Hat man die Auswahl für ein System und einen Provider getroffen, stellt sich die Frage, wie man die verfügbare Datenbankumgebung am besten verwaltet und administriert. Auch bei einem Shared-Hosting-Paket, bei dem die Eingriffsmöglichkeiten systembedingt eingeschränkt sind, lohnt es sich, sich mit einem passenden Tool zum Anlegen von Tabellen, dem komfortablen Import und Export von Daten und für Backup-Aufgaben zu bewaffnen. Bei einer Server-Umgebung ist dies geradezu ein Muss, es sei denn, man beherrscht die MySQL-Administration auf Kommandozeilen-Ebene perfekt. Bei den Administrations-Tools kann man zwei Varianten unterscheiden: solche, die auf dem Server oder dem Webspace installiert werden und solche, die als Client auf dem lokalen PC eingerichtet und betrieben werden. Wie erwähnt, funktioniert diese Methode bei Shared-Hosting-Umgebungen jedoch in den wenigsten Fällen.

Die Hitparade der Tools wird angeführt von der Applikation PhpMyAdmin (www.phpmyadmin.net). Sie ist vollständig in PHP programmiert und bietet einen breiten Funktionsumfang. Da eine Installation von PhpMyAdmin im Document-Root eines Web-Auftritts nicht ohne Risiko ist, bieten viele Webhoster PhpMyAdmin bei ihren Shared-Hosting-Paketen bereits vorinstalliert an. Wo dies nicht der Fall ist, sollte man PhpMyAdmin in jedem Fall entweder außerhalb des Webverzeichnis-Baums oder ? wenn dies nicht möglich ist ? in einem geschützten Unterverzeichnis installieren. Zumindest die zweite Variante ist auch bei Shared-Hosting-Paketen jederzeit möglich.


Funktionen von PhpMyAdmin

MySQL-Datenbanken administrieren

Das Tool bietet eine umfassende Funktions-Sammlung zum Administrieren einer MySQL-Datenbank. Schon auf der Eingangsseite bietet es zum Anlegen einer Datenbank ein Eingabefeld an, in das man lediglich den Namen der Datenbank eintragen muss. Schon ist die neue Datenbank erstellt. Shared-Hosting-Mieter haben von dieser Funktion jedoch vielfach nichts, da in diesem Bereich vordefinierte Datenbanknamen die Regel sind.

Das Anlegen von Tabellen ist jedoch in jeder Installationsumgebung möglich. In der Datenbankansicht bietet PhpMyAdmin die Möglichkeit, neue Tabellen zu definieren. Dazu muss in das Feld Name der gewünschte Tabellenbezeichner und in Felder die Anzahl der gewünschten Spalten eingetragen werden. Nach diesem Schritt erfolgt die Definition der einzelnen Spalten. Für jede zu definierende Spalte wird dem HTML-Formular eine Zeile hinzugefügt. Dabei müssen in mehreren Feldern die Eigenschaften der einzelnen Spalten festgelegt werden. Als Erstes sollte immer ein Primärschlüssel der Tabelle definiert werden, damit jeder Datensatz eindeutig identifiziert werden kann.

Nach dem Anlegen der Tabelle wechselt PhpMyAdmin in die entsprechende Tabellenansicht. Oben wird das SQL-Kommando angezeigt, mit dem die Tabelle erzeugt wurde. Auf der Übersichtsseite haben Sie nun die Möglichkeit, neue Spalten hinzuzufügen, bestehende zu modifizieren oder gar zu löschen, neue Indizes zu definieren, Datensätze einzufügen oder die Tabelle umzubenennen.

Hervorragende Dienste leistet PhpMyAdmin bei der Installation fertiger PHP-Skripts. Bei größeren Applikationen mit Datenbankanbindung stehen die notwendigen Tabellendefinitionen als so genannter SQL-Dump zur Verfügung. Es handelt sich dabei um eine Batch-Datei mit allen notwendigen SQL-Befehlen. PhpMyAdmin bietet nun die Möglichkeit, per Upload diese Datei einzulesen und die Befehle ausführen zu lassen. Damit lassen sich auch komplexe Tabellenkonstrukte, wie sie zum Beispiel für Foren, Weblogs oder Content-Management-Systeme erforderlich sind, in wenigen Minuten realisieren.


Inhalte sichern

MySQL-Datenbanken administrieren

In Sachen Datenbank-Backup leistet PhpMyAdmin ebenfalls wertvolle Dienste. Grundsätzlich bietet MySQL zum Sichern von Datenbanken und Tabellen drei Möglichkeiten an: das Kopieren der Datenbankverzeichnisse und der enthaltenen Dateien, die Verwendung von speziellen SQL-Kommandos sowie den Export der Daten in ein universelles Format.

Ein Kopieren der Datenbankverzeichnisse inklusive der Datenbanken und Strukturen ist nur auf einem Root-Server möglich. Shared-Hosting-User können ihre Backups bequem mit den Export-Funktionen von PhpMyAdmin durchführen und dabei auch noch unterschiedliche Ausgabeformate wählen.

Klicken Sie für eine Backup-Operation in der Tabellenansicht von PhpMyAdmin auf den Reiter Exportieren. Als Formate für den Export eignen sich SQL, CSV-Daten und XML am besten. Im SQL-Format exportiert PhpMyAdmin die Daten als SQL-Kommandodatei. Der große Vorteil ist bei dieser Variante, dass dabei alle Informationen zu der Datenbank und den Tabellen sowie die Daten in ausführbare SQL-Kommandos umgewandelt werden. Ist irgendwann einmal ein Rückspielen der Daten notwendig, müssen Sie diese Datei lediglich ausführen, und die Datenbank, die Tabelle sowie die Datensätze werden wiederhergestellt.

Bei Verwendungen des CSV-Formats werden lediglich die Datensätze gesichert. Für jeden Datensatz wird in der CSV-Datei eine neue Zeile eingefügt und die einzelnen Felder der Datensätze werden mit Strichpunkten (Semikolons) voneinander getrennt. Leider geht hierbei die Struktur der Datenbank verloren.

Das XML-Format entspricht im Wesentlichen dem CSV-Format. Statt die Daten aber einfach in Zeilen und durch Semikolons zu trennen, wird die Hierarchie beibehalten und die Daten werden in Form von Tags strukturiert. Zwar geht so die Struktur der Datenbank nicht verloren, doch es fehlen wichtige Informationen zum Tabellenaufbau.

Je nach Größe der Tabelle ist es sinnvoll, die Daten zu komprimieren. Wählen Sie unter Kompression dazu eine der Optionen keine, Zip-komprimiert (für Windows-Nutzer zu empfehlen) oder GZip-komprimiert.


Daten importieren

MySQL-Datenbanken administrieren

Auch die Import-Funktion von PhpMyAdmin leistet wertvolle Dienste. Einmal kann man natürlich auf diese Weise eine gesicherte Tabellenkonstruktion im Fall eines Crash wieder in das Produktivsystem zurückspielen. Jedoch kann man mit diesem Verfahren jederzeit auch größere Datenmengen in einem Fremdformat in eine vorhandene Tabelle einspielen, ohne mühsam Formulare ausfüllen zu müssen. Für den Import stehen dieselben Formate zur Verfügung wie für den Export, also SQL, CSV oder XML.

Beim Einspielen von CSV-Daten kann man den Input über Parameter sehr genau spezifizieren. In der Regel sind die einzelnen Felder eines Datensatzes durch Semikolons und Datensätze durch Zeilenumbrüche voneinander getrennt. Wenn Sie eine Datei mit Feldern, die durch Tabulatoren getrennt sind, importieren, tragen Sie in das Feld Felder getrennt mit einfach \t ein. Sollte die CSV-Datei nicht durch die unter Windows übliche Zeichenfolge \r\n (Wagenrücklauf und Zeilenumbruch), sondern nur durch die unter Linux typische Zeichenfolge \n (Zeilenumbruch) getrennt sein, dann passen Sie dies entsprechend in dem Feld Zeilen getrennt mit an, zum Beispiel durch die Eingabe von \n.

Finden sich in der zu importierenden Datei nicht zu jeder Spalte der MySQL-Tabelle entsprechende Felder in den neuen Datensätzen, dann können Sie die Reihenfolge und Zuordnung in dem Feld Spaltennamen festlegen.


SQL-Anweisungen

MySQL-Datenbanken administrieren

Außerordentlich hilfreich ? insbesondere für PHP-Programmierer ? ist die Möglichkeit, direkt SQL-Anweisungen mit Hilfe von PhpMyAdmin auszuführen. Damit lassen sich Befehle auf einfache Weise vor dem Codieren kurz testen. Auch beim Finden von Fehlern in einem Skript, in dem SQL-Anweisungen verarbeitet werden, kann diese Funktion nützlich Dienste leisten. Der von PhpMy
Admin generierte PHP-Code lässt sich per Cut and Paste einfach und schnell in ein Skript übertragen.

Wenn Sie sich in der Tabellenansicht befinden, können Sie weiter unten auf der Seite ein großes Text- und eine kleines Auswahlfeld entdecken. In das Textfeld können Sie eine beliebige SQL-Anweisung eingeben. Das daneben befindliche Auswahlfeld zeigt die Felder der gerade ausgewählten Tabellen an. Mit einem Klick auf OK wird die Anweisung ausgeführt und das Ergebnis ausgegeben. Sie können jedoch auch in dem Feld darunter eine SQL-Kommandodatei, die Sie zum Beispiel auf Ihrem lokalen PC vorbereitet haben, auswählen und diese ausführen lassen.

Alternativ haben Sie die Möglichkeit, auf das kleine Icon mit der Aufschrift SQL zu klicken. Es öffnet sich daraufhin ein neues Fenster, in dem Sie sowohl SQL-Befehle direkt eintippen, eine Kommandodatei ausführen oder sich die bisherigen SQL-Kommandos anzeigen lassen können. Sollten Sie im Hauptfenster eine bestimmte Tabelle ausgewählt haben, dann sind die entsprechenden Spalten dieser Tabelle ebenfalls in dem Befehlsfenster verfügbar. Das Ergebnis der Befehle wird im Hauptfenster ausgegeben.

Ist es Ihnen hingegen lieber, eine SQL-Anweisung mittels Point and Click zusammenzustellen anstatt sie einzutippen, so wählen Sie auf der linken Seite einfach eine beliebige Datenbank aus und klicken Sie anschließend auf den Reiter Abfrageeditor. Dieser bietet Ihnen nun die Option, die gewünschten Felder für die Abfrage auszuwählen, Kriterien und Verknüpfungen festzulegen und diese Abfrage anschließend auszuführen.


Fazit

MySQL-Datenbanken administrieren

PhpMyAdmin ist ein komfortables und mächtiges Werkzeug zur Verwaltung von MySQL-Datenbanken, auf das auch Shared-Hosting-Mieter nicht verzichten sollten. Wenn der Provider das Tool noch nicht installiert hat, sollten Sie das nachholen ? allerdings aus Sicherheitsgründen unbedingt in einem geschützten Verzeichnis.