MariaDB oder MySQL: Welches Da­ten­bank­ma­nage­ment­sys­tem hat die Nase vorn? Stand bei MariaDB anfangs die Ent­wick­lung eines Drop-in-Re­pla­ce­ments mit hohen Open-Source-Community-Standards im Vor­der­grund, verfolgen beide Projekte aktuell ganz un­ter­schied­li­che Ent­wick­lungs­zie­le. Welche das sind, erfahren Sie bei uns.

Managed Database Services
Da­ten­ban­ken – Auf´s We­sent­li­che kon­zen­trie­ren
  • IONOS Cloud-Partner: Die Experten für Ihren Datenbank-Betrieb
  • Flexibel: Maß­ge­schnei­der­te Datenbank-Lösungen ganz auf Ihre Be­dürf­nis­se
  • Re­chen­zen­tren in Deutsch­land: Ihre Daten sind sicher

MariaDB vs. MySQL – die wich­tigs­ten Merkmale im Überblick

MySQL ist ein bewährtes Da­ten­bank­ma­nage­ment­sys­tem, das An­wen­den­den als Open-Source-Software zur Verfügung steht und sich mit zahl­rei­chen En­ter­pri­se-Er­wei­te­run­gen ergänzen lässt. Das MariaDB-Ent­wick­lungs­team um Michael Widenius hat das Beste der MySQL-Kern­soft­ware über­nom­men und um zahl­rei­che Features erweitert. Für wen sich der Umstieg von MySQL auf MariaDB lohnt, zeigt folgende Tabelle, die zentrale Merkmale beider DBMS ge­gen­über­stellt.

Merkmal MySQL 8.0 MariaDB 11
Er­schei­nungs­jahr 1995 2009
Ent­wick­ler Oracle MariaDB Cor­po­ra­ti­on / Foun­da­ti­on
Lizenz GPL + pro­prie­tär GPL v2
OS-Un­ter­stüt­zung Linux, Windows, macOS Breitere Linux-Un­ter­stüt­zung
Re­pli­ka­ti­on GTID, Master/Slave GTID, Galera Cluster
Par­ti­tio­nie­rung MySQL Cluster Spider, Galera
Rol­len­ba­sier­te Kontrolle Seit 8.0 Seit 10.0.5
Au­then­ti­fi­zie­rung SHA-256 ed25519
Ver­schlüs­se­lung InnoDB InnoDB, Aria, Logs
Firewall & Mas­kie­rung Pro­prie­tär Über MaxScale (BSL)
Ana­ly­se­funk­tio­nen Co­lum­nS­to­re
Backup En­ter­pri­se Backup MariaDB Backup (GPL)
Datenbank-Engines InnoDB, MyISAM … + Co­lum­nS­to­re, MyRocks, Aria …
SQL-/NoSQL-Schnitt­stel­len Ja / Ja Ja / Ja
Kon­nek­to­ren u.a. C, Java, PHP + Excel, Swift, R

Die Ent­wick­lung von MySQL und MariaDB

Schlüs­sel­fi­gur hinter MariaDB und MySQL ist der finnische Soft­ware­ent­wick­ler Michael „Monty“ Widenius. Zusammen mit den Schweden David Axmark und Alan Larsson gründete Widenius das Ak­ti­en­un­ter­neh­men MySQL AB, das 1995 die erste Version des quell­of­fe­nen Da­ten­bank­ma­nage­ment­sys­tems (DBMS) MySQL ver­öf­fent­lich­te. Dies gipfelte 2008 im Verkauf des Software-Projekts an Sun Mi­cro­sys­tems. Im Jahr 2009 verließ Widenius das Soft­ware­pro­jekt zusammen mit anderen MySQL-Kern­ent­wick­lern und -Kern­ent­wick­le­rin­nen und kon­zen­trier­te sich fortan auf die Ent­wick­lung des MySQL-Forks MariaDB. Das Ent­wick­ler­team be­fürch­te­te, dass Oracle in einen In­ter­es­sen­kon­flikt gerät, wenn das Un­ter­neh­men die Open-Source-Software MySQL und gleich­zei­tig auch eine pro­prie­tä­re Datenbank-Software ent­wi­ckelt.

Die Ent­wick­lung des MySQL-Forks erfolgte zunächst durch die 2009 ge­grün­de­te Monty Program AB. Diese fu­sio­nier­te 2014 mit SkySQL zur MariaDB Cor­po­ra­ti­on. Das Community-Projekt MariaDB Server wird von der MariaDB-Foun­da­ti­on ent­wi­ckelt. MariaDB hat einen starken Fokus auf die offene Ent­wick­lung. Im Vor­der­grund stehen zwei Grund­sät­ze:

  • Der Quellcode von sich in der Ent­wick­lung be­find­li­chen Pro­gramm­tei­len steht über öf­fent­li­che Re­po­si­to­rys zur Verfügung.
  • Alle Ent­wick­lungs­schrit­te werden öf­fent­lich do­ku­men­tiert.
Tipp

Schaffen Sie ein sicheres „Zuhause“ für Ihre Web­pro­jek­te mit dem SQL Server Hosting von IONOS.

MariaDB vs. MySQL im Vergleich

Die Datenbank-Ma­nage­ment­sys­te­me MySQL und MariaDB basieren auf demselben Software-Kern. MariaDB ist ein Fork (eine Ab­spal­tung) von MySQL 5.1, hat sich im Laufe der Zeit aber zum ei­gen­stän­di­gen Datenbank-Ma­nage­ment­sys­tem ent­wi­ckelt. Wir stellen die Un­ter­schie­de der aktuellen MariaDB- und MySQL-GA-Versionen (General Avai­la­bi­li­ty) MySQL 8.0.43 und MariaDB 11.8.2 gegenüber.

Da­ten­bank­struk­tur

Der Ent­wick­lung von MariaDB liegt der Anspruch zugrunde, voll­kom­me­ne Kom­pa­ti­bi­li­tät zur Da­ten­bank­struk­tur sowie zu den APIs und Kon­fi­gu­ra­ti­ons­da­tei­en von MySQL si­cher­zu­stel­len, um Anwendern ein Drop-in-Re­pla­ce­ment zu er­mög­li­chen. Ein Upgrade von MySQL auf MariaDB oder an­ders­her­um soll genauso leicht möglich sein wie ein Upgrade zwischen zwei ver­schie­de­nen MySQL-Versionen.

Prin­zi­pi­ell liegt beiden Datenbank-Ma­nage­ment­sys­te­men dieselbe Da­ten­bank­struk­tur zugrunde. Beide Systeme ent­spre­chen dem re­la­tio­na­len Da­ten­bank­mo­dell. Bei Ad­mi­nis­tra­ti­ons­auf­ga­ben und Backups kommen bei MariaDB seit Version 10.5 jedoch nicht mehr wie in MySQL mysqldump oder mysqladmin zum Einsatz, sondern mariadb-dump und mariadb-admin.

Hinweis

MariaDB hat sich als bi­när­kom­pa­ti­bler 1:1-Ersatz für MySQL etabliert. Ab MySQL Version 8.0 ist diese Kom­pa­ti­bi­li­tät jedoch nicht mehr gegeben.

Datenbank-Engines

MariaDB möchte sich von MySQL zukünftig vor allem durch Fle­xi­bi­li­tät abgrenzen. Anwendern steht neben den von MySQL un­ter­stütz­ten Standard-Engines eine stetig wachsende Anzahl al­ter­na­ti­ver Datenbank-Engines für spezielle An­wen­dungs­fäl­le zur Verfügung.

Hinweis

Bei einer *Datenbank-Engine handelt es sich um ein Spei­cher­sub­sys­tem, das dem Datenbank-Ma­nage­ment­sys­tem das Erstellen, Lesen, Ak­tua­li­sie­ren und Löschen von Daten in Da­ten­bank­ta­bel­len er­mög­licht – siehe CRUD.

Folgende Tabelle zeigt die ver­füg­ba­ren Datenbank-Engines für MySQL 8.0.43 und MariaDB 11.8.2 (laut Do­ku­men­ta­ti­on).

Datenbank-Engine MySQL 8.0.43 MariaDB 11.8.2 Be­schrei­bung
InnoDB / XtraDB InnoDB ist bei beiden Systemen Standard. XtraDB wurde in MariaDB bis 10.1 verwendet
MyISAM Ver­al­te­tes Spei­cher­sys­tem ohne Trans­ak­ti­ons­un­ter­stüt­zung
MEMORY Für temporäre In-Memory-Tabellen mit schnellen Zugriffen
CSV Speichert Tabellen im CSV-Format
Archive Kom­pri­miert Daten für Lang­zeit­spei­che­rung
BLACKHOLE Nimmt Daten an, speichert sie aber nicht – dient zum Logging/Testing
Merge Führt mehrere MyISAM-Tabellen mit gleicher Struktur zusammen
Federated / Fe­de­ra­te­dX Zugriff auf entfernte Tabellen via Netzwerk (MariaDB: Fe­de­ra­te­dX)
Co­lum­nS­to­re Spal­ten­ori­en­tier­te Engine für Analysen großer Da­ten­men­gen
Aria Trans­ak­ti­ons­si­che­re MyISAM-Al­ter­na­ti­ve für temporäre Tabellen
CONNECT Zugriff auf externe Da­ten­quel­len wie CSV, XML, ODBC
Sequence Generiert Zah­len­fol­gen (z. B. 1, 2, 3 …)
Spider Sharding-Engine mit Un­ter­stüt­zung für XA-Trans­ak­tio­nen

Da­ten­bank­ab­fra­gen

In der Anwendung un­ter­schei­den sich MySQL und MariaDB nicht. Beide DBMS streben eine 100-pro­zen­ti­ge Kom­pa­ti­bi­li­tät zur Da­ten­bank­spra­che SQL an. Anwender nutzen iden­ti­sche SQL-State­ments, um Da­ten­bank­ein­trä­ge zu erstellen, zu ak­tua­li­sie­ren, abzurufen oder zu löschen.

Tipp

Eine Ein­füh­rung in grund­le­gen­de SQL-State­ments bietet unser MySQL-Tutorial für Ein­stei­ger.

Per­for­mance

Bietet MariaDB im Vergleich zu MySQL die bessere Per­for­mance? Benchmark-Tests wie der DBT-3 weisen darauf hin. Aus­schlag­ge­bend ist hierbei unter anderem, welche Datenbank-Engine zum Einsatz kommt. Benchmark-Tests für Setups mit un­ter­schied­li­chen Datenbank-Engines stellen beide Ent­wick­ler-Com­mu­ni­tys auf den je­wei­li­gen Projekt-Websites zur Verfügung.

MariaDB punktet hier nicht nur mit einer großen Auswahl al­ter­na­ti­ver Datenbank-Engines, sondern bietet auch einen ef­fi­zi­en­ten Optimizer für SQL-Abfragen. Ab Version 10.0.1 setzt MariaDB bei der Op­ti­mie­rung von Abfragen nicht mehr auf interne Sta­tis­ti­ken der je­wei­li­gen Datenbank-Engine, sondern auf Engine-un­ab­hän­gi­ge Ta­bel­len­sta­tis­ti­ken. Diese werden als her­kömm­li­che Tabellen in der Datenbank ge­spei­chert und er­mög­li­chen es, deutlich mehr Werte zu erfassen und aus­zu­wer­ten, um einen idealen Plan für die Aus­füh­rung von SQL-State­ments zu ermitteln.

Hinweis

In der Do­ku­men­ta­ti­on von MariaDB finden In­ter­es­sier­te diverse An­lei­tun­gen zur Op­ti­mie­rung der Datenbank-Per­for­mance. Auch MySQL bietet um­fang­rei­ches In­for­ma­ti­ons­ma­te­ri­al zum Datenbank-Tuning an (Oracle-Web-Konto er­for­der­lich).

Hoch­ver­füg­bar­keit

Sowohl MySQL als auch MariaDB eignen sich für Szenarien mit ver­teil­ten Da­ten­ban­ken. Um Anwendern hoch­ver­füg­ba­re Systeme mit linearer Ska­lier­bar­keit anbieten zu können, stellen beide Software-Projekte Cluster-Lösungen zur Verfügung:

MySQL Cluster ist eine ACID-konforme Echtzeit-Datenbank mit Multi-Master-Ar­chi­tek­tur ohne Single Point of Failure. Sie bietet bis zu 99,9999 % Ver­füg­bar­keit, ho­ri­zon­ta­le Ska­lie­rung auf Standard-Hardware, Auto-Sharding sowie SQL- und NoSQL-Schnitt­stel­len.

MariaDB Galera Cluster ist seit Version 10.1 direkt in­te­griert. Er basiert ebenfalls auf einer Multi-Master-Ar­chi­tek­tur und verwendet aus­schließ­lich InnoDB (bzw. XtraDB). Für verteilte Da­ten­ban­ken kommt außerdem MaxScale zum Einsatz. Der kon­fi­gu­rier­ba­re Proxy zur Last­ver­tei­lung bietet Funk­tio­nen wie Failover, Caching, Read/Write-Splitting und Schutz­maß­nah­men gegen DoS. Plugins er­mög­li­chen die Anpassung und Filterung von Da­ten­bank­zu­grif­fen.

Hinweis

Seit Version 2 steht MaxScale unter der Business Source License (BSL). Der Quellcode ist frei verfügbar, die Nutzung jedoch be­schränkt. Nach drei Jahren wird die Lizenz au­to­ma­tisch zu einer GPL-ähnlichen Open-Source-Lizenz.

Si­cher­heit

Sowohl MySQL als auch MariaDB bieten Ver­schlüs­se­lungs­funk­tio­nen für inaktive Daten (Data at rest). MySQL setzt eine Ver­schlüs­se­lung der in der Datenbank ge­spei­cher­ten Daten mithilfe der Datenbank-Engine InnoDB auf Ta­b­le­space-Ebene um. Eine Ver­schlüs­se­lung einzelner Da­ten­bank­ta­bel­len ist nicht möglich.

Hinweis

Bei Ta­b­le­spaces (Ta­bel­len­räu­men) handelt es sich um logische Spei­cher­ein­hei­ten re­la­tio­na­ler Datenbank-Engines wie InnoDB, die sämtliche Daten des Da­ten­bank­sys­tems enthalten. Jeder Ta­b­le­space be­inhal­tet min­des­tens eine Datafile – eine physische Datei des zu­grun­de­lie­gen­den Be­triebs­sys­tems, in der sowohl Da­ten­bank­ta­bel­len als auch Indizes ge­spei­chert werden.

MariaDB hingegen bietet seit Version 10.1 deutlich dif­fe­ren­zier­te­re Ver­schlüs­se­lungs­funk­tio­nen. Diese umfassen eine Data-at-rest-Ver­schlüs­se­lung auf folgenden Datenbank-Ebenen:

  • InnoDB-Ta­bel­len­räu­me
  • InnoDB-Tabellen
  • InnoDB-Log­da­tei­en
  • Aria-Tabellen
  • Temporäre Dateien
  • Binäre Logdaten

Mit Rolling En­cryp­ti­on Keys bietet MariaDB zudem eine Funktion, die es er­mög­licht, ein Ab­lauf­da­tum für Ver­schlüs­se­lungs­schlüs­sel fest­zu­le­gen.

Beide Da­ten­bank­ma­nage­ment­sys­te­me un­ter­stüt­zen den Key Ma­nage­ment Service (KMS) von Amazon Web Services (AWS) via Plugin sowie SSL-ver­schlüs­sel­te Ver­bin­dun­gen. Bei der Benutzer-Au­then­ti­fi­zie­rung setzen MySQL und MariaDB ebenfalls auf ein Plugin-System. Das MySQL-Ent­wick­ler­team stellt Anwendern mit sha256_password und caching_sha2_password zwei Au­then­ti­fi­zie­rungs-Plugins zur Verfügung. Letzteres bietet neben der Standard-Au­then­ti­fi­zie­rung via Secure Hash Algorithm ein ser­ver­sei­ti­ges Caching, das eine schnel­le­re Re-Au­then­ti­fi­zie­rung er­mög­licht. Auch MariaDB setzt bis Version 10.1.21 mit SHA-1 auf den Secure Hash Algorithm. Seit 10.1.22 kommt das ed25519-Plugin zum Einsatz. Bei ed25519 handelt es sich um ein EdDSA-Si­gna­tur­sche­ma, das SHA-2 mit Curve25519 kom­bi­niert.

Al­lein­stel­lungs­merk­mal von MariaDB im Bereich Da­ten­bank­si­cher­heit ist die rol­len­ba­sier­te Zu­griffs­kon­trol­le Role Based Access Control, RBAC, die seit Version 10.0.5 nativ ins DBMS im­ple­men­tiert ist, die Ver­wal­tung von Zu­griffs­rech­ten deutlich ver­ein­facht und Fehler bei der manuellen Rech­te­ver­ga­be reduziert. MySQL hat dieses Feature jedoch mitt­ler­wei­le nach­ge­zo­gen: Seit MySQL 8.0.0 (2018) un­ter­stützt auch MySQL Rollen (roles) als Teil seiner Benutzer- und Rech­te­ma­nage­ment-Funk­tio­nen.

Ökosystem

Mit dem dualen Li­zenz­sys­tem verfolgt Oracle bei MySQL eine Open-Core-Strategie. Während das Kern­pro­gramm MySQL als Community-Edition mit öf­fent­li­chem Quellcode kostenlos zur Verfügung steht, werden diverse Er­wei­te­run­gen für das Datenbank-Ma­nage­ment­sys­tem nur in Kom­bi­na­ti­on mit einer der kom­mer­zi­el­len Editionen angeboten. Dank einer starken Ver­net­zung mit der Open-Source-Community ist es dem MariaDB-Ent­wick­ler­team jedoch möglich, Schnitt­stel­len zu quell­of­fe­nen Al­ter­na­ti­ven für die meisten pro­prie­tä­ren MySQL-Produkte in MariaDB zu im­ple­men­tie­ren.

Funktion MySQL MariaDB Server
Mo­ni­to­ring MySQL En­ter­pri­se Monitor (pro­prie­tär) Webyog Monyog (pro­prie­tär)
Backup MySQL En­ter­pri­se Backup (pro­prie­tär) MariaDB Backup (Fork von Percona Xtra­Back­up, GPL)
SQL Ma­nage­ment MySQL Workbench (GPL/pro­prie­tär) Webyog SQLyog (GPL/pro­prie­tär)
Load Balancing & Routing MySQL Router (GPL/pro­prie­tär) MariaDB MaxScale (BSL)
Firewall MySQL En­ter­pri­se Firewall (pro­prie­tär) MariaDB MaxScale (BSL)

Support

Pro­fes­sio­nel­ler Support ist sowohl bei MySQL als auch MariaDB nur für zahlende Kunden und Kundinnen verfügbar. MySQL bietet über die kos­ten­pflich­ti­ge Oracle Premier Support-Lizenz 24/7-Support, Patches, Updates sowie tech­ni­sche Beratung und Feh­ler­be­he­bung per Remote.

Die MariaDB Cor­po­ra­ti­on stellt im Rahmen einer Sub­scrip­ti­on ebenfalls 24/7-Support, Si­cher­heits-Updates, Per­for­mance-Beratung und Mi­gra­ti­ons­hil­fe bereit – auch für MySQL. Da viele ur­sprüng­li­che MySQL-Ent­wick­le­rin­nen und Ent­wick­ler heute bei MariaDB arbeiten, wirbt das Un­ter­neh­men mit besonders tiefem Know-how in beiden Systemen.

Do­ku­men­ta­ti­on und Community

MySQL ist im Besitz der Oracle Cor­po­ra­ti­on, die auf der of­fi­zi­el­len MySQL-Website eine um­fang­rei­che Do­ku­men­ta­ti­on aller quell­of­fe­nen MySQL-Projekte ver­öf­fent­licht. Darüber hinaus stehen der Nut­zer­ge­mein­de folgende Mög­lich­kei­ten zur Verfügung, sich über MySQL zu in­for­mie­ren:

Ver­ant­wort­lich für die Do­ku­men­ta­ti­on von MariaDB ist die MariaDB-Foun­da­ti­on, die sich dabei auf die Nut­zer­ge­mein­de stützt. Wer sich an der Ent­wick­lung und Do­ku­men­ta­ti­on von MariaDB Servern oder den quell­of­fe­nen An­wen­dun­gen des MariaDB-Öko­sys­tems be­tei­li­gen möchte, findet auf der Website der MariaDB Foun­da­ti­on ent­spre­chen­de In­for­ma­tio­nen.

Für welche An­wen­dungs­fäl­le eignet sich MariaDB oder MySQL?

MariaDB eignet sich gut für interne Ge­schäfts­an­wen­dun­gen, die Sie ohne Li­zenz­kos­ten betreiben möchten. Viele Un­ter­neh­men nutzen MariaDB in Web­platt­for­men, Content-Ma­nage­ment-Systemen oder als Datenbank für Reporting und Analyse. Auch bei ver­teil­ten Systemen mit vielen gleich­zei­ti­gen Schreib- und Le­se­zu­grif­fen zeigt MariaDB Stärken. Wenn Sie auf Linux-Servern arbeiten oder eine MySQL-In­stal­la­ti­on ersetzen wollen, pro­fi­tie­ren Sie von der Kom­pa­ti­bi­li­tät und Er­wei­ter­bar­keit.

MySQL spielt seine Stärken in großen, stabilen Pro­duk­tiv­sys­te­men aus. Typische Ein­satz­be­rei­che sind Online-Shops, Bu­chungs­sys­te­me, SaaS-Platt­for­men oder Fi­nanz­an­wen­dun­gen mit hohen An­for­de­run­gen an Ver­füg­bar­keit und Trans­ak­ti­ons­si­cher­heit. Wenn Sie An­wen­dun­gen in der Cloud betreiben – etwa auf AWS, Google Cloud oder Oracle Cloud – greifen Sie oft direkt auf MySQL zurück. Auch bei stark struk­tu­rier­ter JSON-Ver­ar­bei­tung oder wenn Sie SLA-gedeckten Support brauchen, treffen Sie mit MySQL die passende Wahl.

Fazit MariaDB vs. MySQL

MySQL ist ein aus­ge­reif­tes Da­ten­bank­sys­tem mit starker Ver­brei­tung. Viele En­ter­pri­se-Funk­tio­nen wie Mo­ni­to­ring, Backup und Si­cher­heit sind jedoch nur in kos­ten­pflich­ti­gen Editionen enthalten. MariaDB entstand als Fork von MySQL und hat sich als voll­wer­ti­ge Open-Source-Al­ter­na­ti­ve etabliert. Viele Linux-Dis­tri­bu­tio­nen setzen stan­dard­mä­ßig darauf. Exklusive Funk­tio­nen wie MaxScale und Co­lum­nS­to­re zeigen die zu­neh­men­de Ei­gen­stän­dig­keit.

Die Ent­schei­dung zwischen MySQL und MariaDB hängt letzt­end­lich weniger vom Namen ab, sondern davon, welches System besser zu Ihrem An­wen­dungs­sze­na­rio passt.

Tipp

In weiteren Ratgebern haben wir außerdem MariaDB vs. Post­greS­QL und MariaDB vs. MongoDB für Sie ver­gli­chen.

Zum Hauptmenü