Druckversion

MySQL - My Structured Query Language (eng.); strukturierte Abfragesprache (de.)

Bei der Software MySQL handelt es sich um eine relationelle Open-Source Datenbank, die in ihren Strukturen ähnlich aufgebaut ist, wie Microsoft Access oder SQL. Heutzutage greifen immer mehr Internetapplikationen sowie Dienste und Programme auf Datenbanken zurück, um dort ihre Informationen zu speichern und zu verwalten. 

Logo: MySQL
Abb. 1: Logo - MySQL u. Sun microsystems

Geschichte
Als Entwickler der MySQL-Datenbank gilt der Finne Michael „Monty“ Widenius. Er programmierte die Datenbank im Jahre 1994 als eine Weiterentwicklung einer von ihm zuvor erstellten Datenbank. Die neu entwickelte MySQL-Engine war vorerst nur zum Eigengebrauch für die Firma TcX AB bestimmt, welche Widenius mit seinen schwedischen Kommilitonen Alan Larsson und David Axmark nach ihrem Studium gründete. Ende der 1980er Jahre, beschlossen Axmark und Widenius fortan MySQL als FOSS-Lösung (Free and Open Source Software) weiter auszubauen und gründeteten das Unternehmen MySQL AB. Im Jahr 2008 wurde das Unternehmen durch den ehemaligen Software- und Computer Hersteller Sun Microsystems übernommen. Zwei Jahre darauf übernahm Oracle, einer der weltgrößten Softwarehersteller, wiederrum Sun Microsystems.

MySQL heute
Heutzutage ist die Open-Source Datenbank MySQL die Nummer zwei der meist eingesetzten Datenbanken weltweit. Täglich werden circa 35.000 Installationspakete der Datenbank-Engine heruntergeladen, vorwiegend von Entwicklern, IT-Managern und Datenbankadministratoren.

Aufbau einer MySQL-Datenbank
Eine MySQL-Datenbank besteht im Inneren aus einer oder mehrerer Tabellen. Diese Tabellen werden mit existierenden Objekten (Entity‘s) gefüllt. Beispiele hierfür sind: Personen, Gegenstände, usw.
Weiterhin enthält sie Attribute anhand deren man bei einem Suchvorgang die aufgelisteten Objekte identifizieren kann. Einige Beispiele hierfür: Name, Vorname, Personal Nummer, Adresse, Geburtsdatum, Beruf, usw.


Abb. 2: Grundlegender Aufbau einer MySQL Datenbank
Abb. 2: Grundlegender Aufbau einer MySQL-Datenbank

Das Datenbank-Frontend (DB-Frontend) wird von einem Client aufgefordert eine Suchabfrage zu starten. Dieses stellt daraufhin über das Netzwerk (Internet) eine Query an das Datenbank-Management-System (DBMS).
Aufgrund der gestellten Suchanfrage des DB-Frontend durch den Client, kommuniziert das DBMS mit der entsprechenden Datenbank / Datenquelle und ruft dort die gefilterten Suchergebnisse ab. Diese werden als Antwort über das Netzwerk zurück an das DB-Frontend übermittelt und dem Client vorgelegt. 

Vorteile einer MySQL-Datenbank
Eine MySQL-Datenbank beinhaltet selbstverständlich viele Vorteile. Andernfalls würde sie nicht zu einer der weltweit meist eingesetzten Software-Lösungen im Bereich der Datenspeicherung zählen.

  • Leistung
    Ein großer Vorteil ist die schnelle Übermittlung von Daten. Gewöhnlich dauert dies nur einige Sekunden. Je nach Datenmenge in seltenen Fällen auch wenige Minuten.

  • Kostengünstigkeit
    Da MySQL auf Grundlage von Open-Source entwickelt wurde, ist die Basisversion kostenlos. Die Enterprise Edition, bei der zusätzlich Supportbetreuung durch die Firma MySQL bereitgestellt wird, kostet ab $600 aufwärts.

  • Sicherheit durch SSL-Verschlüsselung
    Die Abfrage des Datenbank-Frontend an das Datenbank-Management-System geschieht über das Netzwerk. Grundsätzlich ist jede Verbindung angreifbar. Es besteht jedoch die Möglichkeit, über das hybride Verschlüsselungsprotokoll SSL (Secure Sockets Layer), die Datenübertragung so sicher zu gestalten, wie irgend möglich.

  • Kompatibilität
    MySQL-Datenbanken werden auf zahlreiche Plattformen unterstützt:
         - Microsoft
         - Apple
         - Linux, usw.

  • Bedienbarkeit
    Dadurch, dass MySQL ein Open-Source Produkt ist, besteht für den versierten Benutzer die Möglichkeit die Datenbank-Engine selbst weiter zu entwickeln. Durch die Entwicklung des Anwenders selbst, steigt im gleichen Zuge auch die Bedienerfreundlichkeit sowie Einfachheit des Produktes MySQL. 

  • Clustering
    MySQL bietet die Möglichkeit, eine Datenbank auf mehreren Servern zusammen zu schließen. Dies ermöglicht eine Leistungs- und Geschwindigkeitssteigerung und sogt im Falle eines Serverausfalls für zusätzliche Sicherheit.

Nachteile einer MySQL-Datenbank

  • Features
    Gegenüber den Konkurrenzprodukten von Oracle und Microsoft fehlt es der Open-Source Version der MySQL-Datenbank noch an Leistungs- und Funktionsumfang. Dies ist in der kommerziellen Variante nicht der Fall.

  • Open-Source
    Da MySQL kostenlos und quelloffen ist, muss jede Software die auf Basis von MySQL entwickelt wird, bzw. in der der gleiche Quellcode verwendet wird, auch als General Public License zur Verfügung stehen.
Bedeutung von MySQL für den E-Commerce
Datenbanken sind aus der Welt der modernen Anwendungen und des Internet nicht mehr wegzudenken. Der Einsatz von Datenbanken reicht heute von der Speicherung von Gästebucheinträgen, bis hin zu Unternehmensanwendungen. Heutzutage müssen diese Art der komplexen Informationsspeicher in der Lage sein, tausende Anfragen pro Minute zu verarbeiten. Betrachtet man den Marktanteil der MySQL-Datenbank, nimmt dieses mit über 25 % Welt-Marktanteil eine dominante Stellung ein. Ein weiterer entscheidender Punkt ist die Open-Source Eigenschaft der Software. Somit besteht die Möglichkeit mit dem entsprechenden Know How die Datenbank für die eigene Nutzung optimal anzupassen. Laut Edward Screven, Chief Corporate Architect bei Oracle, dem Besitzer des Produktes MySQL, soll es auch zukünftig nicht zu einer Kommerzialisierung kommen:

"Die Community-Versionen der Datenbank sollen dauerhaft erhalten bleiben – Oracle ist daran gelegen, dass MySQL seine weite Verbreitung behält"[1]

Dies ist ebenfalls ein Aspekt für die Nutzung von MySQL. Des Weiteren gibt es zahlreiche Entwickler-Tools und Werkzeuge, sowie dutzende Foren, in denen sich Anwender über Probleme und Möglichkeiten gegenseitig austauschen können. 

________________________________________________________________

Quellen

Heise Online: Oracle: Die Zukunft von MySQL, in: http://www.heise.de/newsticker/meldung/Oracle-Die-Zukunft-von-MySQL-977355.html, zugegriffen am 31.05.2010
SQL-Info: MySQL, in: http://sql-info.de/mysql/mysql.html, zugegriffen am 29.05.2010
Technische Universität Chemnitz: Was ist MySQL?, in: http://www.vorlesungen.info/node/add/blog, zugegriffen am 31.05.2010
Active-VB: MySQL-Datenbanken, in: http://www.activevb.de/tutorials/tut_mysqldb/mysqldb.html, zugegriffen am 28.05.2010

MySQL: MySQL 5.1 Referenzhandbuch, in: http://dev.mysql.com/doc/refman/5.1/de/index.html zugegriffen am 30.05.2010

Claudia Unkelbach: Schattenbaum: MYSQL, in: http://www.schattenbaum.net/php/mstart.php zugegriffen am 31.05.2010

Bilder
Abb. 1: Logo - MySQL u. Sun microsystems, in: http://www.mysql.de/
Abb. 2: VHPD: Grundlegender Aufbau einer MySQL-Datenbank, in: http://www.vhpd.de/tag/microsoft
________________________________________________________________

[1]
siehe: Screven, Edward: Chief Corporate Architect Oracle
________________________________________________________________

AnhangGröße
Grundaufbau-MySQL.jpg22.05 KB
mysql-sun.png14.35 KB