MySQL

MySQL gehört zu den populÀrsten relationalen Datenbankmanagementsystemen und wird vor allem im Web Development eingesetzt. Was macht dieses RDBMS so beliebt und worin liegen die Vor- und Nachteile?
Mitarbeiter*innen einer Agentur besprechen, wie sie MySQL bei der Umsetzung des Kundenprojekts einbringen können und schauen gemeinsam auf einen Laptop.
© mavoimages

Was ist MySQL?

MySQL ist ein Datenbankmanagementsystem, oft auch Datenverwaltungssystem genannt oder DBMS abgekĂŒrzt, und wird alleinstehend als RDBMS fĂŒr relationale Datenbanken oder als Teil eines sogenannten Techstacks, einer Kombination aus mehreren Technologien, in der Webentwicklung eingesetzt. Es gehört neben Microsoft Access oder MariaDB zu den am weitesten verbreiteten Datenbankmanagementsystemen und ist sowohl als Open-Source-Software als auch als Enterprise Version erhĂ€ltlich.

Das RDBMS wurde 1994 vom schwedischen Softwareunternehmen MySQLAB entwickelt. Der Name MySQL ist eine Zusammensetzung aus der Datenbank Programmiersprache SQL und My, dem Namen der Tochter des MySQLAB-MitbegrĂŒnders Michael Widenius. 2010 wurde es von dem amerikanischen Hard- und Softwarehersteller Oracle gekauft.

Funktionsprinzip von MySQL einfach erklÀrt

MySQL von Oracle ist aus einem MySQL-Server und einem oder mehreren MySQL-Clients aufgebaut. Streng genommen ist der MySQL-Server das Datenbank Managementsystem, welches die Daten speichert und verteilt.

MySQL Datenbanken sind relationale Datenbanken, was bedeutet, dass Daten nicht an nur einem Speicherort gesammelt werden, sondern sich auf mehrere Tabellen verteilen. Die Struktur der Datenbank ist in separaten physischen Dateien organisiert. Mithilfe der Programmierung werden Regeln festgelegt, die die Beziehungen, sogenannte Relationen, der einzelnen Datenfelder untereinander definieren. So kann die eine Tabelle ihre Informationen aus einer anderen Tabelle beziehen. Auf diese Weise werden auch Redundanzen und Duplikate in der Datenbank vermieden.

Wie der Name bereits vermuten lĂ€sst, erfolgen Abfragen an die Datenbank mit der Datenbanksprache SQL. SQL steht fĂŒr Structured Query Language und Ă€hnelt semantisch der englischen Umgangssprache, weshalb die Syntax relativ simpel aufgebaut ist. Die Datenbankabfragen können auf unterschiedliche Weise erfolgen: Entweder können sie direkt in SQL eingegeben oder als SQL Statements in eine andere Programmiersprache integriert werden. Soll SQL gĂ€nzlich umgangen werden, kann auch eine spezifische Programmierschnittstelle, eine sogenannte API verwendet werden, um die SQL Syntax zu verbergen.

WofĂŒr wird MySQL verwendet?

MySQL unterstĂŒtzt je nach Version viele verschiedene Datentypen. So können unter anderem numerische Daten, Zeichenketten wie Texte oder Characters oder Datums- oder Uhrzeitformate in der Datenbank verarbeitet werden.

Die hĂ€ufigste Verwendung von MySQL ist die Datenspeicherung in der Webentwicklung. In Kombination mit anderen Technologien hier besonders fĂŒr die Entwicklung dynamischer Websites.

PHP und MySQL

Um eine Internetseite zu erstellen reicht MySQL als Datenbankmanagementsystem nicht aus. Es braucht neben der Datenbank auch einen Server, auf dem die Anwendung gespeichert und gehostet wird, und eine fĂŒr die Webentwicklung geeignete Programmiersprache. Die hĂ€ufigste Kombination mit MySQL ist die Skriptprogrammiersprache PHP und der Linux-Server Apache bzw. Nginx. Alle Komponenten zusammen werden auch LAMP (Linux + Apache + MySQL + PHP) Techstack genannt. Eine alternative Version ist auch Apache durch Ngin zu ersetzen, sodass die AbkĂŒrzung dann LEMP (abgeleitet von der Aussprache engine) lautet. Ein geeignetes Framework wie das PHP-Framework Laravel bietet zusĂ€tzliche UnterstĂŒtzung bei der Programmierung.

Es hat sich bewĂ€hrt, Online Projekte mit PHP und MySQL umzusetzen. PHP und MySQL sind starke Partner, weshalb viele Webanwendungen auf diese Kombination setzen. Dazu gehören unter anderem YouTube, Facebook, Google und Twitter. Viele Webhosting Provider statten ihre Server standardmĂ€ĂŸig mit PHP und MySQL aus. Selbst populĂ€re Content-Management-Systeme (CMS) wie TYPO3 oder WordPress verwenden im Hintergrund PHP und fĂŒr die Datenspeicherung MySQL.

Auch Webagenturen arbeiten hÀufig mit PHP und MySQL, weil sich damit sehr individuelle Lösungen und Individualsoftware genau nach Kundenwunsch entwickeln lÀsst.

Als serverseitige Skriptsprache lassen sich mit PHP nutzerfreundliche, interaktive und dynamische Websites mit flexiblem Content erstellen. Dies gilt vor allem seit Version 7. PHP ist darĂŒber hinaus cross-kompatibel und wegen seiner UnabhĂ€ngigkeit von Plattform und Server in andere Systeme transportabel. WĂ€hrend in anderen Programmiersprachen oft HTML-Zeilen umgeschrieben werden mĂŒssen, arbeitet PHP wegen seiner FĂ€higkeit der Decodierung hervorragend mit HTML zusammen. Außerdem bietet PHP von der Syntax ideale Voraussetzungen fĂŒr Datenbankabfragen.

Doch nicht nur aus diesem Grund werden PHP und MySQL fĂŒr dynamische Websites eingesetzt. Aufgrund der Eigenschaften von relationalen Datenbanksystemen wie MySQL, vor allem die Auslagerung der Daten in mehreren Tabellen, weshalb zum einen Speicherplatz gespart wird und zum anderen große Datenmengen schnell verarbeitet werden können, was fĂŒr die Performanz von Webanwendungen sehr von Vorteil ist.

Nicht zuletzt sind sowohl PHP also auch MySQL open source und lizenzkostenfrei, weshalb die Webentwicklung mit diesem Techstack aus Datenbank und Programmiersprache sehr kostengĂŒnstig ist.

Nachteile von MySQL

Die Nachteile von MySQL werden vor allem dann offenbar, wenn Laien bzw. unerfahrene Softwareentwickler dieses RDBMS verwenden wollen. Um – zumindest datenbankbasierte – Programmierkenntnisse kommt man bei MySQL nicht herum. Daher erfordert MySQL gerade am Anfang etwas Einarbeitung. Auch da es selten alleinstehend verwendet wird, sollten Grundkenntnisse der anderen Technologien vorhanden sein und ZusammenhĂ€nge hergestellt werden können. Außerdem bietet es keine grafische OberflĂ€che, weshalb wiederum externe Programme nötig sind, wenn eine grafische OberflĂ€che gewĂŒnscht ist.

MySQL Datenbanken bei TenMedia in Berlin

TenMedia ist eine junge Software- und Webagentur in Berlin. Seit 2011 gehört die Entwicklung von individuellen Softwarelösungen und dynamischen Websites fest zu unserem Angebot an technischen Dienstleistungen. Unsere Webanwendungen basieren nicht auf schlĂŒsselfertigen CMS, sondern werden nativ von unserem Development Team von Grund auf mithilfe leistungsstarker Technologien, meist auf Basis eines LAMP Techstacks, entwickelt. Dabei setzen wir alle KundenwĂŒnsche genauestens um und sorgen so fĂŒr einmalige individuelle Softwarelösungen.

Wir freuen uns ĂŒber Anfragen per Telefon oder E-Mail und stehen jederzeit fĂŒr ein persönliches und unverbindliches Kennenlernen in unserer Webagentur zwischen Alexanderplatz und Rosa-Luxemburg-Platz in Berlin Mitte zur VerfĂŒgung.