Keine Ahnung, welches Hosting-Paket zu dir passt? Zum Webhosting-Berater

Was ist InnoDB und was sind die Unterschiede zu anderen Engines?

Autor: Hosttest Redaktion   |29.10.2020

InnoDB erklärtDie Datenbanksysteme MySQL und MariaSB stellen den aktuell am weitesten verbreiteten Standard für Datenbanken bei Webseiten dar. Sie definieren allerdings lediglich die Art und Weise, in der das System die Daten speichert - als relationale in Tabellen, die in festen Kriterien angelegt werden. Für den direkten Umgang mit den Datenbanken und deren Manipulation verwenden MySQL und MariaDB hingegen ein externes Speichersubsystem (Engine), das die Schnittstelle zwischen dem Datenbankmangementsystem (DBMS) und den Informationen darstellt. Diese Aufgabe übernimmt bei beiden seit einigen Jahren die Speicher-Engine InnoDB.

Was ist die Aufgabe einer Engine wie InnoDB?

Die eigentliche Aufgabe von InnoDB und anderen Speichersubsystemen liegt darin, eine zusätzliche Zwischenschicht (Layer) zwischen der für die Verwaltung verantwortlichen Software und den gespeicherten Informationen zu bilden. Diese dient dazu, zum Beispiel die Zugriffe zu administrieren, Datensätze zu sperren und parallele Abrufe oder Schreibvorgänge aus unterschiedlichen Quellen zu koordinieren. Das DBMS in Form von MySQL oder MariaDB bildet in diesem Zusammenhang lediglich den Rahmen, der etwa Struktur der Daten und Art der Syntax für Befehle festlegt. Dieses übergibt die Aufgaben inklusive der Daten anschließend an InnoDB oder eine andere Engine, die den direkten Umgang mit den Daten pflegen.

 

Webhosting mit MySQL Datenbanken finden

Jetzt das perfekte Webhosting mit MySQL Datenbanken sichern

Zum MySQL Webhosting Vergleich

 

Was steckt hinter der Trennung zwischen MySQL und InnoDB?

Durch die Verwendung eines festen Systems mit unterschiedlichen Speicherengines besitzen MySQL und MariaDB eine Flexibilität, die durch eine feste Integration nicht erreicht werden könnte. Abstrahiert übernehmen InnoDB und weitere Engines die Rolle von Plug-ins, die einen modularen Aufbau bei Kernfunktionen des Datenbankservers zulassen. Diese Trennung erleichtert zudem die Pflege und die Optimierung des Quellcodes, da die Einbindung von Speichersubsytemen externer Anbieter eine Konzentration aller Ressourcen auf die Weiterentwicklung von MySQL beziehungsweise MariaDB zulässt. So stammt InnoDB ursprünglich von dem finnischen Unternehmen Innobase Oy, das der Softwarekonzern nach seiner Übernahme 2005 im Laufe der folgenden Jahre vollständig in die eigene Struktur integrierte.

Welche Vorteile besitzt InnoDB gegenüber anderen Engines?

Bis zu der Version 5.0 setzte MySQL auf MyISAM (My Indexed Sequential Access Method) als Speichersubsystem, gab dieses als Standard jedoch zugunsten von InnoDB auf. Auch die meisten Content Management Systeme (CMS) und Shopsoftware verwenden InnodDB als Standard, viele Plug-ins setzen hingegen nach wie vor auf MyISAM. Dieser Unterschied bei der Präferenz beruht in erster Linie auf den spezifischen Eigenschaften der beiden Engines. Zu den Merkmalen von InnoDB zählen:

  • Zugriffe sperren lediglich eine Spalte (Row) mit einem Datensatz statt einer Tabelle
  • Sichere Zugriffe durch Transaktionen
  • Transaktionen können vor dem Ende abgebrochen und widerrufen werden (Rollback)
  • Integrierte Optionen für Anlegen und Einspielen von Back-ups
  • Automatische Schreibsperre für andere Transaktionen bei Schreibzugriffen/li]
  • Wiederherstellung von Datenbanken nach einem Crash
  • Schnelle SELECT Zugriffe (Lesen von Daten)
  • Unterstützung von Fremdschlüsseln für Sicherheit und Integrität von Transaktionen

Demgegenüber kennzeichnen MyISAM folgende Eigenschaften:

  • Integrierte Suche für Volltext
  • Keine Unterstützung für referenzielle Integrität
  • Zugriff auf Datenbanken in einzelnen Schritten statt gebündelten Transaktionen
  • Keine Kontrolle der Datenbanken auf Konsistenz und Vollständigkeit der Zugriffe
  • Schnelle INSERT und UPDATE Zugriffe (Lesen von Daten)
  • Effiziente Nutzung von Speicher im RAM und auf der Festplatte

Dass InnoDB bei dem Schreiben von Daten deutlich längere Zugriffszeiten benötigt, liegt an der strengen Kontrolle der Datenbanken auf ihre Konsistenz. Im Unterschied zu MyISAM überwacht InnoDB jeden Zugriff, bis dieser erfolgreich in den Speicher oder eine Datei geschrieben wurde. MyISAM erteilt hingegen lediglich eine Anweisung und überlässt die Kontrolle über Änderungen ausschließlich dem Betriebssystem.

Wie lassen sich Datenbanken einer bestimmten Engine wie InnoDB zuordnen?

Die Arbeit mit Datenbanken erfolgt nur selten manuell - falls solche Eingriffe notwendig sein sollten, empfehlen sich für diesen Zweck komfortable Webinterfaces wie zum Beispiel phpMyAdmin. Die Regel ist, dass diese über die PHP Erweiterung MySQLi (MySQL Improved) erfolgt - seit Version 7.0 unterstützt die Programmiersprache nicht mehr dessen frühere Version MySQL. Die einfachste Variante besteht darin, bei dem Anlegen von Datenbanken das Speichersubsystem durch die Option ENGINE = anzugeben. Auch eine nachträgliche Umwandlung ist möglich, indem der folgende Befehl in MySQL, durch MySQLi oder in phpMyAdmin ausgeführt wird:

ALTER TABLE name ENGINE=myisam/innodb;

Eine Umwandlung geht allerdings mit dem Risiko eines Datenverlusts einher und ein Mischbetrieb zwischen InnoDB und anderen Engines empfiehlt sich lediglich begrenzt.

Alternativen zu InnoDB sind Redis, InfluxDB und MySQLi.

 

Webhosting mit MySQL Datenbanken finden

Jetzt das perfekte Webhosting mit MySQL Datenbanken sichern

Zum MySQL Webhosting Vergleich

 

Foto: Gerd Altmann auf Pixabay

Schreibe einen Kommentar


Weitere Webhoster


Weitere interessante Artikel

Was sind SQL Injections und wie kann man sich schützen?

SQL Injections sind nach wie vor ein Einfallstor für Hacker. Wir zeigen euch wie ihr euch schützen könnt.

Wie lassen sich MySQL Datenbanken importieren und exportieren?

Wir zeigen euch wie einfach es ist MySQL Datenbanken zu exportieren und wieder zu importieren. So seid ihr für einen Umz...

Offene IT-Stellen
IT-Systemadminist...
IP-Projects GmbH & Co. KG
Aktuelle Ausschreibungen
Webspace, externe...
Vor kurzem Beendet
Domain Reselling,...
Vor kurzem Beendet
Webhosting mit Zi...
Vor kurzem Beendet
Webhosting mit ve...
Vor kurzem Beendet
Neueste Bewertungen
Jörg B. hat Alfahosting GmbH bewertet
Philipp B. hat ServMedia.de bewertet
Silke W. hat Net-Build GmbH bewertet
Jörg W. hat STRATO AG bewertet
Florian P. hat IONOS bewertet
Philipp V. hat STRATO AG bewertet
Ralf hat Onyxhosting.de bewertet
Tom hat Onyxhosting.de bewertet
Mehmet B. hat SiteGround bewertet
Joachim H. hat loswebos.de GmbH bewertet
Christian hat netcup bewertet
Adrien P. hat Infomaniak bewertet
mike K. hat checkdomain GmbH bewertet
Octavia Z. hat STRATO AG bewertet
Adrian W. hat ServMedia.de bewertet
Robert L. hat LA Webhosting bewertet
Axel hat Mittwald CM Service bewertet
Udo hat Webspeicherplatz24 GmbH bewertet
Johannes G. hat STRATO AG bewertet
Dominik hat FusionFlare GmbH bewertet

Wir konnten bereits Hunderttausenden Webmastern helfen den passenden Hosting-Anbieter zu finden.
Über hosttest

Im Jahr 2006 riefen wir hosttest ins Leben, um den Webhosting Markt im DACH-Raum transparenter zu machen. Mit derzeit über 400 Webhostern und über 10.000 Angeboten bieten wir dir die beste Grundlage, den für dich passenden Anbieter für Hosting-Leistungen zu finden.

Seit 2015 küren wir zudem alljährlich unsere Webhoster des Jahres und würden uns in Zukunft auch über deine Stimme freuen.
Mehr über uns...