AA_jungle_getye1_sxc_1151099.jpg

© sxc.hu, getye1

Datenbanken mit MySQL Workbench planen

Tabellendschungel lichten

Kleine Datenbanken planen Sie leicht auf Papier. Sobald die Strukturen aber komplexer ausfallen, hilft MySQL Workbench dabei, die Übersicht zu behalten.

In Zeiten des Web 2.0 kommen nur noch wenige Anwendungen ohne Datenbank aus. Je komplexer die Projekte, desto aufwändiger, zeitraubender, unübersichtlicher und fehleranfälliger fallen die Strukturen der dazu passenden Datenbanken aus. Das wissen auch die Softwarehersteller – und so tummeln sich auf dem Markt viele Werkzeuge, um eine Datenbank visuell zu planen und anschließend zu generieren.

Unter Linux fällt das Angebot derartiger Anwendungen sehr übersichtlich aus. Hier haben Entwickler die Wahl zwischen kommerziellen oder kostenlosen Applikationen, wobei letztere meist von den Herstellern der Datenbanken stammen. Während die kommerziellen Tools in der Regel mehrere Datenbanken unterstützen, beschränken sich die Anwendungen der jeweiligen Datenbankanbieter oft auf ihr Produkt. MySQL Workbench [1] gehört zu diesen Werkzeugen.

Da MySQL zu den am häufigsten eingesetzten Datenbankmanagementsystemen (DBMS) zählt, kam im Test die stabile Version 5.1 des Werkzeugs auf den Prüfstand. Die Software steht für viele Betriebssysteme bereit, basiert auf Erfahrungen und Feedback zum Datenmodellierer DBDesigner 4 [2] und steht unter der GPLv2.

MySQL Workbench gibt es in einer Community- und einer Standardversion. Letztere unterscheidet sich von der Community-Variante dadurch, dass sie 79 Euro jährlich kostet, das Prüfen von Datenbankschema und Datenbankmodell übernimmt und die Dokumentation der Datenbank anbietet.

Die Community-Version bringt bereits einen reichen Funktionsumfang mit. Mit ihr können Datenbankadministratoren und Entwickler Tabellen, Views, Indexe, Stored Procedures und Trigger planen, die Schemas vorhandener Datenbanken einlesen und so visualisieren ("Reverse Engineering"), Schema-Synchronisierungen an bestehenden Datenbanken vornehmen ("Change Management") sowie Modelldiagramme exportieren und ausdrucken. Bei MySQL Workbench handelt es sich um eine reine Datenbank-Design-Software, die sich nicht zum Abfragen oder Ändern von Datensätzen eignet. Für derartige Aufgaben bietet Sun den MySQL Query Browser an.

Installation

Für Ubuntu und Fedora stehen Binärpakete von MySQL Workbench bereit [5]. Mit etwas Glück finden Sie die Software auch im Repository von anderen Distribution oder bei Drittanbietern. Für Debian hat beispielsweise Norbert Tretkowski ein Workbench-Paket [6] geschnürt.

Falls Sie bestimmte Modifikationen dringend brauchen, dann holen Sie den Quellcode des Tools, entpacken das gezippte Tar-Archiv, wechseln in das neu entstandene Verzeichnis und werfen am besten erst einmal einen Blick in die Datei README. Dort finden Sie Informationen zu den Abhängigkeiten der Software. Anschließend übersetzen Sie die Software mit ./autogen.sh --prefix=Pfad und make -j3 install in einem Terminal.

Den Pfad ersetzen Sie durch den Namen desjenigen Verzeichnisses, in dem Sie die Software installieren möchten. Das eigentliche Übersetzen dauerte im Test zwar relativ lange, lief aber dank korrekter Voraussetzungen letztendlich problemlos durch.

Erster Start

Haben Sie MySQL Workbench installiert (siehe Kasten "Installation"), starten Sie die Applikation mittels mysql-workbench auf der Kommandozeile (Abbildung 1). In der Übersicht erstellen Sie neue Datenbankmodelle entweder visuell über EER-Diagramme (Erweiterte Entitäten-Relationen-Diagramm) oder über die Eingabe eines Schemas. Die visuelle Methode fällt vielen Anwendern leichter, daher kam sie auch im Test zum Einsatz.

Abbildung 1: Nach dem Start präsentiert MySQL Workbench einen aufgeräumten Arbeitsbereich.

Aufgrund des intuitiven Bedienkonzepts bedarf es keiner großen Einarbeitungszeit. Die Arbeitsfläche hat klar umrissene Bereiche: Links befindet sich eine Werkzeugleiste für die am häufigsten gebrauchten Arbeitsschritte, rechts liegen der Navigator (der sich bei großen Datenbanken als hilfreich erweist), der Katalog (über den Sie Tabellen, Views und Prozeduren gezielt ansteuern) sowie eine Infobox. Im unteren Bereich der Applikation finden Sie, sobald Sie Objekte erstellt oder geöffnet haben, die jeweiligen Objekt-Editoren. Mit diesen bearbeiten Sie die Eigenschaften der Objekte. Als Beispiel richten wir im Folgenden eine einfache Kontaktdatenbank mit Verleihübersicht ein.

Als erstes erstellen Sie dazu die Tabelle Personen, die neben Vor- und Nachnamen auch eine Spalte ("Attribut") mit Integer-Werten enthält, die den sogenannten Primärschlüssel aufnimmt. Um die Tabelle zu erstellen, nutzen Sie das entsprechende Icon im rechten Fensterbereich oder drücken [T]. Sobald Sie die Tabelle platziert haben, legen Sie über die Reiter im Tabelleneditor den Namen der Tabelle, die Spaltennamen und -typen, alle Fremdschlüssel, Trigger sowie die Aufteilung ("Partitionen") fest.

Unter jedem Punkt öffnen sich weitere Dialoge, etwa um Datentypen, Bedingungen, Primärschlüssel oder die Optionen beim Einsatz von Fremdschlüsseln festzulegen. Auf dem Arbeitsblatt zeigt die Software dann die Attribute unterhalb des Tabellennamens als Liste an. Vor jedem Attribut finden Sie ein farbiges Symbol, anhand dessen Sie auf einen Blick sehen, um was für ein Attribut es sich handelt. Ein Schlüsselsymbol zeigt beispielsweise einen Primärschlüssel an. Im Test aktualisierten sich die Markierungen beim nachträglichen Ändern der Spalten allerdings immer erst recht spät, so dass Sie im Zweifelsfall ein Blick in den Tabelleneditor werfen sollten.

Fremdschlüssel und Layer

Nachdem Sie die erste Tabelle erstellt haben, legen Sie weitere Tabellen an und beginnen damit, Fremdschlüsselbeziehungen zu definieren. Diese zeigen Beziehungen zwischen den Feldern verschiedener Tabellen an. Sie erstellen sie entweder über die Werkzeugleiste oder den Tabelleneditor. Da das Programm beim Erstellen von Fremdschlüsseln über die Werkzeugleiste im Test recht eigenwillig agierte, empfiehlt es sich, den Editor zu verwenden. Dazu wechseln Sie zum Reiter Foreign Keys und generieren einen neuen Fremdschlüssel, der auf die erste Tabelle zeigt.

Um das zu bewerkstelligen, reicht ein Mausklick in das entsprechende Feld: MySQL Workbench schlägt einen Namen für den Fremdschlüssel vor und zeigt eine Auswahlliste mit allen Tabellen in der Datenbank an. Im Bereich neben den Namen der Fremdschlüssel und referenzierten Tabellen blendet die Software mögliche Kandidaten ein. Dabei berücksichtigt das Programm nur Felder mit plausiblen Datentypen (Abbildung 2). Rechts im Dialog legen Sie fest, wie die Datenbank im Falle eines Updates auf die Daten oder beim Löschen von betroffenen Einträgen verfährt.

Abbildung 2: Fremdschlüssel definieren Sie am einfachsten über den Tabelleneditor.

In der Regel legt Workbench nur Beziehungen an (sogenannte Relationen), die zu den Datentypen passen. So könnte beispielsweise ein Personendatensatz auf mehrere Adressdatensätze und viele Telefonnummern zeigen. In diesem Fall handelt es sich um eine One-to-many-Relation, bei der ein Datensatz auf mehrere zeigt. Stimmt die Art der Relation einmal nicht, hilft ein Rechtsklick auf die Beziehung, um den Relationeneditor aufzurufen und dort Änderungen vorzunehmen. Enthält eine Tabelle mehrere Fremdschlüssel, markiert die Software diese in unterschiedlichen Farben, sobald Sie mit dem Mauszeiger darüber fahren.

Um bei umfangreichen Datenbanken zusammenhängende Bereiche im Blick zu behalten, bietet MySQL Workbench Ebenen ("Layer") als Hilfsmittel an. Diese erlauben es, mehrere Tabellen farblich zu hinterlegen und so optisch zu einer Einheit zusammenzufassen. Um Ebenen zu nutzen, gehen Sie entweder über die Toolbar oder drücken [L] und ziehen den Mauszeiger über alle Objekte, die in der Ebene enthalten sein sollen (Abbildung 3).

Abbildung 3: Layer helfen Ihnen, in umfangreichen Projekten die Übersicht zu bewahren.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • MySQL Workbench 5.1.6 Release
    Mit der Version 5.1.6 wurde das erste Release von MySQL Workbench nun auch für Linux veröffentlicht.
  • Die richtige Datenbank finden
    MySQL oder Postgres, Firebird oder lieber doch SQLite? Die Wahl der richtigen Datenbank für den Desktop fällt nicht schwer, wenn man die Hintergründe kennt.
  • MySQL-Datenbank verwalten
    Ob Weblog, Wiki oder Bildergalerie, kaum eine Web-Anwendung kommt ohne Datenbank aus. Mit ein paar Grundlagen werden Sie leicht ihr eigener Datenbankadministrator.
  • Anleitung: Digikam mit MySQL zusammen nutzen
    Mit der vor einiger Zeit erschienen Version 1.3 bietet Digikam nun auch die Möglichkeit eine vollwertige relationale MySQL-Datenbank zu nutzen. Die Funktion ist zwar noch nicht komplett ausgereift, bietet aber ein erhebliches Potential.
  • Datenbank-Frontends
    Auf der Landkarte der Linux-Applikationen gibt es nicht viele weiße Flecke - aber einen findet man im Datenbank-Sektor: Im Quadranten, in dem sich Einsteigertauglichkeit und Funktionsvielfalt schneiden, fehlt eine freie Alternative. Benutzerfreundliche, grafische Clients versuchen die Lücke zu schließen.
Kommentare

Infos zur Publikation

title_2016_06

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Aktuelle Fragen

Welche Drucker sind Linux-mint kompatibel?
Johannes Nacke, 20.05.2016 07:32, 4 Antworten
Hallo Ihr Lieben, ich bitte um mitteilung welche Drucker Kompatibel sind mit Linux-Mint. LG Joh...
MS LifeCam HD-5000 an Debian
Kay Michael, 13.04.2016 22:55, 0 Antworten
Hallo, ich versuche die oben erwähnte Cam an einem Thin Client mit Debian zu betreiben. Linux...
Import von Evolution nach KMail erzeugt nur leere Ordner
Klaus-Christian Falkner, 06.04.2016 12:57, 3 Antworten
Hallo, da ich vor einiger Zeit von Ubuntu auf Kubuntu umgestiegen bin, würde ich gerne meine E...
Sophos lässt sich nicht unter Lubuntu installieren
Chrstina Turm, 30.03.2016 20:56, 3 Antworten
Hi Leute, habe mir vor paar Tagen auf ein Notebook, das ohne Linux ausgedient hätte, Linux dr...
Novell Client auf Raspbian
Chris Baum, 16.03.2016 15:13, 3 Antworten
Hallo Community, ich hätte eine Frage, und zwar geht es um folgendes: Ich möchte eine Datei...