MySQL ist ein relationales Datenbank-Management-System, das auf der Structured Query Language (SQL) basiert. Das Datenbank-System ist Open-Source-basiert und mit nahezu sämtlichen Betriebssystem-Plattformen kompatibel. Sie können das System daher unter Windows, Linux, Unix und einigen weiteren Betriebssystemen nutzen. Die Anwendungsmöglichkeiten MySQLs sind sehr vielseitig, doch findet es überwiegend Einsatz in Webseiten, Online-Publikationen sowie verschiedenen internetbasierten Anwendungen.

Überblick und Allgemeines zu MySQL

Die Abkürzung „MySQL“ setzt sich aus den Komponenten „My“ und „SQL“ zusammen. „My“ bezeichnet dabei den Vornamen der Tochter des Mitentwicklers des Datenbank-Systems Michael Widenius. SQL beschreibt die Structured Query Language, eine Datenbank-Abfrage-Sprache, die der Definition relationaler Datenbankstrukturen dient. SQL findet auch Einsatz zur Bearbeitung und für Abfragen von Datenbeständen, die auf diesen Datenbanken basieren.

Als Datenbanksprache baut SQL auf der relationalen Algebra auf. Die Syntax der Sprache SQL orientiert sich semantisch an der englischen Umgangssprache. Die Sprache ist standardisiert durch ein gemeinsames Gremium von ISO und IEC sowie unter Kooperation mit nationalen Normungsgremien (darunter DIN).

Im Internet ist MySQL eines der am häufigsten verwendeten Datenbank-Systeme. In der Generierung dynamischer Webseiten sowie Anwendungen spielt MySQL daher eine wichtige Rolle. Zahlreiche CMS (Content-Management-Systeme) bedienen sich der Technik des Datenbank-Systems, darunter TYPO3 sowie WordPress.

Als Datenbank-System zeichnet sich die Open-Source-Software insbesondere dadurch aus, besonders große Datenmengen schnell verarbeiten zu können. Die hohe Performance kommt unter anderem durch die Art der Datenspeicherung zustande. Mit MySQL werden Daten in einer Art und Weise gespeichert, dass sie einen möglichst geringen Speicherplatz beanspruchen.

SQL und Abfrage-Tools für MySQL

Das Datenbank-System von MySQL lässt sich über die Datenbanksprache SQL (structured query language) ansteuern. MySQL verfügt über keine eigenständige grafische Oberfläche, doch finden Sie verschiedene externe Programme, mit denen sich eine solche realisieren lässt. Sowohl kostenlose als auch kommerzielle Programme ermöglichen eine grafische Darstellung zur Bedienung und Administration des Datenbank-System. Beispiele hierfür sind die Anwendung phpMyAdmin oder die von Oracle heraus gebrachte MySQL Workbench.

MySQL gilt mittlerweile als sehr ausgereift, sicher und vor allem als stabil. Das flexible Datenbank-System ist zudem mit zahlreichen Schnittstellen zu unterschiedlichen Anwendungen ausgestattet und somit weithin kompatibel. Ebenso ist die Bedienung in zahlreichen Sprachen möglich. Auch gilt die Bedienung des Datenbank-Systems als vergleichsweise einfach und selbsterklärend.

Geschichte und Entwicklung MySQL

Ursprünglich begann die Entwicklung des DBMS als Open-Source-Projekt im Jahr 1994. Das schwedische Unternehmen MySQL AB stand unter der Leitung der Entwickler Michael Widenius und David Axmark. Die erste Veröffentlichung erschien im Jahr 1997. Anfang des Jahres 2008 übernahm dann Sun Microsystems das Unternehmen. Sun Microsystems führte die Entwicklung von MySQL fort, bevor noch im gleichen Jahr die Veröffentlichung der Version 5.0 erfolgte. Im Jahr 2010 übernahm Oracle schließlich Sun Microsystems wodurch MySQL zum Datenbankriesen Oracle „wanderte“. Da Oracle im Bereich der kommerziellen Datenbanken neben Microsoft der Haupt-Wettbewerber von MySQL ist, stieg zunächst die Befürchtung, dass durch den Wechsel zu Oracle nun auch MySQL kostenpflichtig wird.

Mehr zum Thema:
7 Fakten über Linux: Ist Linux das bessere Betriebssystem?

Oracle arbeitet seither fortlaufend an der Verbesserung des Datenbank-Systems. Zahlreiche neue Releases sind seitdem erschienen. Der in den Programmiersprachen C und C++ geschriebene Quellcode des Systems ist frei verfügbar und veränderbar. Für Entwickler ist die kostenlose Nutzung unter der GNU General Public Licence möglich. Für Unternehmen ist es allerdings erforderlich, eine kommerzielle Lizenz bei Oracle zu erwerben.

Aufbau und Funktionsprinzip des Datenbank-Systems von MySQL

Datenbank-Schema unter MySQL

Datenbank-Schema unter MySQL

Das Datenbank-Management-System besteht aus den Komponenten des MySQL-Servers sowie einem oder mehreren Clients. Das System arbeitet demnach nach dem Client-Server-Prinzip. Der Server stellt hierbei das eigentliche Datenbank-Management-System dar. Dem Server obliegen die Aufgaben der Speicherung sowie der Verteilung der Daten.

Innerhalb der Datenbanken liegen die Daten in zweidimensionalen Tabellen vor. In unterschiedlichen Zeilen und Spalten befinden sich hier unterschiedliche Datentypen. Diese umfassen etwa numerische Daten, aber auch Zeichenketten (darunter Text) sowie Datumsformate und Uhrzeiten.

Clients sind imstande, diese Daten über strukturierte Anfragen an die Engine (d.h. den Server) abzurufen. Auf diese Weise ist ebenso eine Bearbeitung dieser Daten möglich. Die Datenbanksprache SQL ermöglicht das Abrufen sowie auch das Verändern, Einfügen und Löschen der Daten.

Das Datenbank-System ist ebenso geeignet, eine größere Zahl verschiedener Datenbanken zu verwalten. Verschiedene Clients können mehrere Anfragen gleichzeitig an diese Datenbanken senden. Der Zugriff auf diese Datenbanken ist in Abhängigkeit ihrer Verwendung sowohl über das Internet als auch über interne Netzwerke möglich.

Die Regelung des Zugriffs auf die Daten erfolgt, indem Clients bzw. deren Benutzer unterschiedliche Rechte erhalten. Über diese Rechte können Sie steuern, auf welche Daten sowie Datenbanken bestimmte Anwender Zugriff erhalten. Zu den möglichen Clients gehören etwa Internet-Anwendungen sowie Kommandozeilen-Programme.

Zur Optimierung der Performance von MySQL Datenbanken lassen sich die Abfrageergebnisse in einem Cache-Speicher zwischenspeichern. Dieser Cache trägt den Namen Query-Speicher. Dieser ist imstande, eine Anfrage unmittelbar zu beantworten, sofern sie mit einer vorherigen Anfrage identisch ist und es in der Zwischenzeit zu keiner Änderung des Datenbestands in der Datenbank gekommen ist.

Kommt es also zu einem späteren Zeitpunkt zu einer gleichen Anfrage, ist eine sofortige Beantwortung aus dem Query-Cache möglich. Es ist entsprechend kein weiterer Zugriff auf die Datenbank erforderlich. Dies hat eine deutliche Entlastung des Servers zur Folge. Infolgedessen steigt die Performance in Form einer schnelleren Verarbeitungsgeschwindigkeit.

Verbreitung und Einsatzgebiete von MySQL

Bei MySQL handelt es sich um das Open-Source-Datenbank-System mit der weltweit größten Verbreitung. Es existieren mehrere Millionen Installationen des Systems. Ein besonders häufiges Anwendungsgebiet MySQLs sind Webserver. In Kombination mit der beliebten Skriptsprache PHP (Hypertext Preprocessor) lässt sich das Datenbank-System für die Datenspeicherung von Web-Services einsetzen.

Ebenso basieren zahlreiche CMS auf der Open-Source-Software. Insbesondere WordPress, TYPO3 oder Joomla nutzen dieses Datenbank-System in Kombination mit PHP als Grundlage.

Als Architektur liegt das Datenbank-System ebenso vielen Webshops zugrunde. Anbieter von Webhosting-Lösungen bieten daher MySQL-Datenbanken in Kombination mit PHP grundsätzlich als Grundausstattung ihrer Webserver an. Auch große Internet-Konzerne wie Google oder Facebook nutzen das Datenbank-System als Grundlage

Mehr zum Thema:
Was ist Opensource?

Nutzung von MySQL in LAMP

Häufig erfolgt die Nutzung von MySQL im Zusammenhang mit LAMP (Linux, Apache, MySQL und PHP). Hierbei handelt es sich um eine Web-Entwicklungsplattform beziehungsweise Infrastruktur, auf deren Basis sich dynamische Webseiten und Webanwendungen entwickeln lassen. Als Akronym steht LAMP für die Komponenten Linux (Betriebssystem), Apache (Webserver), MySQL und PHP. Es existieren auch Kombinationen, in denen sich die Komponenten von dieser Aufstellung unterscheiden. Gelegentlich kommen Python oder Pearl an Stelle von PHP zum Einsatz. Auch andere Betriebssysteme sind möglich. Hierbei kann sich die Bezeichnung der Plattform ändern, beispielsweise zu WAMP beim Einsatz von Windows.

Versionen und Abwandlungen des Systems

Das Datenbank-System liegt sowohl als Open-Source-basierte Software als auch in kommerziellen Varianten vor. Für den Server existieren mehrere Lizenzmodelle, die für je unterschiedliche Anwendungszwecke vorgesehen sind. Für verschiedene Ansprüche können Sie unterschiedliche Lizenzen erwerben.

Es existieren über die regulären Lizenzmodelle hinaus auch abgewandelte Versionen der Datenbank, die als Fork oder Abspaltung bekannt sind. Dazu gehört Drizzle, ein Datenbank-Management-System, deren Entwicklung auf MySQL basiert. Auch Percona Server ist eine Abwandlung des Systems und stellt eine erweiterte Version mit zusätzlicher Funktionalität dar. Zu den Besonderheiten gehört insbesondere eine bessere horizontale Skalierbarkeit gegenüber der regulären Version.

Eine weitere Fork ist MariaDB, ein Community-Projekt. Nach der Übernahme MySQLs durch Oracle hatte sich dieses Projekt von MySQL abgespalten, nutzt aber weiterhin Befehle sowie Schnittstellen von MySQL.

Trivia: Das Delfin Logo von MySQL

Wer mit MySQL zu tun hat, dem ist sicherlich das Logo von MySQL aufgefallen: Ein Delfin. Doch warum ist ausgerechnet ein Delfin das Symbol von MySQL? Aus Sicht der damaligen Entwickler symbolisierte der Delfin bzw. Delfine im Allgemeinen all das wofür MySQL stehen sollte: Delfine sind schnell, intelligent und freundlich.

Mårten Mickos beschreibt die Frage nach dem Symbol von MySQL auf Quora so: „One of the co-founders, Monty, said ‚I like dolphins. They are fast, intelligent and kind. And in groups, they kill sharks.'“ (Auf Deutsch: Ich mag Delfine. Sie sind, intelligent und nett. Und in Gruppen töten Sie Haie“). Einige Jahre später bekam der Delfin sogar einen Namen. Seitdem heißt der Delfin von MySQL „Sakila“.

Weitere Informationen zu MySQL:

Katharina Berger

Redakteurin bei Awantego
Katharina Berger ist Redakteurin für den Blog derBiteno GmbH und schreibt vorwiegend über technische und betriebswirtschaftliche Themen. Daneben reist sie gerne und schreibt darüber.
Katharina Berger

Letzte Artikel von Katharina Berger (Alle anzeigen)

0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar