MariaDB zählt zu den beliebtesten relationalen Open-Source-Datenbanken. Das Datenbank-Management-System (DBMS) wurde von den ursprünglichen Programmierern von MySQL rund um Michael Widenius mit dem Ziel entwickelt, dass MariaDB quelloffen bleibt. In diesem Artikel schauen wir uns die Gemeinsamkeiten und Unterschiede der beiden Datenbanksystem im Detail an und erklären, welches System unter welchen Umständen die bessere Wahl ist.
Kurze Geschichte von MySQL und MariaDB
Die Erfolgsgeschichte von MySQL begann 1996 mit dem Release der ersten Version, nur ein Jahr nach Gründung des Aktienunternehmens MySQL AB. 2008 folgte der Verkauf des Projekts an Sun Microsystems, das 2010 von Oracle übernommen wurde. Bereits 2009 verließen einige der ursprünglichen Entwickler das Softwareprojekt und richteten ihren Fokus auf die Entwicklung von MariaDB. Ihnen ist die offene Entwicklung der Datenbanktechnologie wichtig: Der Quellcode ist öffentlich zugänglich und alle Entwicklungsschritte sind öffentlich dokumentiert.
Hinweis: Die MariaDB Corporation ist der Hauptentwickler des Datenbanksystems und wurde von Michael Widenius gegründet. Neben der kostenlosen Version Maria Community gibt es mit MariaDB Enterprise und MariaDB SkySQL kommerzielle Ableger der Open-Source-Datenbank. Das Datenbanksystem untersteht der 2012 gegründete MariaDB Foundation, um sicherzustellen, dass es langfristig frei bleibt und nicht von einem anderen Unternehmen übernommen werden kann.
Kompatibilität
Bis MariaDB 5.5 ließen sich MySQL-Versionen mit wenigen Einschränkungen durch MariaDB-Versionen ersetzen. Seit der MySQL-Version 5.6 und MariaDB in Version 10 gibt es größere Unterschiede hinsichtlich der Kompatibilität. So ist die Migration von MySQL nach MariaDB möglich, ein Zurück ab der Version 10 je nach den verwendeten Funktionen jedoch nicht oder es ist schwieriger. Die aktuelle, stabile Version ist MariaDB 10.11.
Unterschiede zwischen MariaDB und MySQL
Die beiden Datenbank-Management-Systeme basieren auf derselben Softwarebasis und haben viele Gemeinsamkeiten. Bei beiden handelt es sich um eine relationale Datenbanken, die Informationen in Tabellen mit Spalten und Zeilen speichern und in Beziehung zueinander setzen. Insgesamt sind die beiden Datenbanktechnologien jedoch unterschiedlich. MariaDB
- unterstützt zahlreiche Storage-Engines,
- bietet in vielen Anwendungsfällen die bessere Performance,
- ist vollständig GPL-lizenziert (MySQL hat einen dualen Lizenzansatz) und
- bündelt Thread-Pools anders.
Es ist zu erwarten, dass die Unterschiede zwischen den beiden Datenbanktechnologien in Zukunft größer werden.
Du möchtest MariaDB nutzen? Dann hol dir ein vServer-Produkt von GoDaddy in Verbindung mit der Administrationssoftware cPanel or Plesk. Erfahre hier mehr über selbstverwaltetes VPS-Hosting.
Die Vorteile von MariaDB
Das Datenbank-Management-System MariaDB wird im Gegensatz zu MySQL schneller weiterentwickelt und um Funktionen erweitert.
- Engine-Unterstützung: Das DBMS unterstützt inzwischen mehr Engines, die für eindeutig definierte Anwendungsfälle konzipiert sind. Neben InnoDB und der eigenen Engine Aria gehören dazu unter anderem FederatedX, ColumnStore, MyISAM, Blachhole und Memory. SQL und NoSQL können in einem einzigen Datenbanksystem ausführen.
- Performance: MariaDB ist auf Geschwindigkeit optimiert. Es kombiniert die Speicher-Engine ColumnStore mit Big Data, ColumnStore ermöglicht paralleles Laden und die parallele Abfrageverteilung.
- Sicherheit: Es bietet in der aktuellen Version die Option der Datenverschlüsselung auf Storage-Ebene und der Benutzung von sogenannten Rolling Encryption Keys mit begrenzter Gültigkeitsdauer. Die Verschlüsselung erfolgt dabei auf der Festplatte, auf der das DBMS ausgeführt wird. Zudem erfolgt die Verwaltung der Zugriffsrechte nicht klassisch über Benutzer und Benutzergruppen, sondern über definierte Rollen.
- Hochverfügbarkeit: Als Basis für Skalierbarkeit und Hochverfügbarkeit dient die Clustering-Lösung Galeria, die in der aktuellen Version integriert ist.
- Community-Unterstützung: Das DBMS hat eine große und aktive Community, die an der Bereitstellung regelmäßiger Updates mitarbeitet.
- Replikation: MariaDB Replikation ist eine Funktion, die das Spiegeln des Inhalts eines oder mehrerer Master-Server auf einen anderen Slave-Server ermöglicht. Es ist auch möglich, MariaDB als Replikation-Slave für einen MySQL-Master zu verwenden.
Welche Funktionen und Engines MariaDB unterstützt, hängt von der verwendeten Version und Konfiguration ab.
Verwendung für Websites
MariaDB hat sich als Alternative zu MySQL etabliert. Es wird oft in Kombination mit dem Betriebssystem Linux verwendet, da es für verschiedene Linux-Distributionen verfügbar ist und sich gut in die Linux-Ökosysteme integrieren lässt. Für die meisten Website-Betreiber und kleine E-Commerce-Websites spielen die Unterschiede der beiden Datenbanksysteme jedoch keine große Rolle.
Wenn deine Website zum Beispiel mit WordPress läuft – egal, ob per Shared Webhosting oder über einen Managed Webser –, ist der Vorteil erst bei sehr hohen Besucherzahlen und vielen Datenbankabfragen spürbar. So ist MySQL die Standard-Datenbank für WordPress-Websites. Die Bearbeitung der Datenbank erfolgt dabei über phpMyAdmin. Eine Anleitung zum Öffnen der Software findest du in unserer Managed WordPress Hilfe. Die Verwendung von MariaDB statt MySQL lohnt sich eher für professionelle Anwender, die die zusätzlichen Funktionen in ihren Webanwendungen nutzen und so große Datenbankprojekte betreuen, dass die Leistungsverbesserung spürbar ist.
Titelmotiv: Photo by Campaign Creators on Unsplash