FAQ: MySQL

tl_files/di_img/list.jpgUm was handelt es sich bei MySQL?

MySQL ist ein relationales Datenbank-Management-System. Mit einem (R)DMBS lassen sich auch große Datenmengen strukturiert verwalten. Vor allem die Möglichkeit, mit Hilfe einer Abfragesprache wie SQL (Structured Query Language) gezielt nur Teilmengen aus der Datenbank abzufragen und für den Benutzer aufzubereiten, machen aus DBM-Systemen mächtige Werkzeuge.


tl_files/di_img/list.jpgWie viel Speicherplatz kann eine MySQL-Datenbank belegen?

Das hängt von der innerhalb von MySQL verwendeten Engine ab - InnoDB Tabellen z.B. können ein Maximalgröße von 64 TerraByte erreichen - eine "normale" Webanwendung wird dieses Limit also eher nicht sprengen.

Webanwendungen, für die MySQL ausreichend vor allem in Sachen Performance ist, erreichen normalerweise Datenbankgrößen zwischen einigen MegaByte und mehreren GigaByte.


tl_files/di_img/list.jpgWofür sind MySQL-Datenbanken geeignet?

MySQL hat sich als OpenSource-Software zu einem beliebten System am Markt entwickelt. Für kleine bis mittlere Webprojekte und insbesondere CMS-Systeme ist MySQL mit Tabellen auf Basis der MyISAM Engine völlig ausreichend. Andere wie InnoDB werden z.B. eingesetzt, wenn eine Transaktionssteuerung benötigt wird.

Grundsätzlich gibt es nur sehr wenige Beschränkungen für einen MySQL Einsatz - allerdings wird allgemein davon abgeraten, MySQL in hochperformanten Systemen wie z.B. Chat-Systemen oder Logauswertungen zu verwenden. Für Datenbankserver auf denen viel Traffic herrscht eignen sich eher DBM-Systeme z.B. von Oracle welche von Haus aus für große Cluster und hohen Durchsatz entwickelt werden.


tl_files/di_img/list.jpgWozu dient eine Transaktionssteuerung?

Ein Transaktionssystem wird z.B. im Bankenwesen unbedingt benötigt. Aber auch in ganz normalen Webanwendungen kann es sich u. U. lohnen, mit Transaktionen zu arbeiten.

Ein Vorteil ist, dass eine Transaktion immer mehrere Einzeloperationen umfasst, die dann als Block, quasi in einem Rutsch ausgeführt werden. Das steigert die Performance.

Ein weiterer Vorteil, meist der Wichtigste, ist das Transaktionssysteme über die Konsistenz der Daten wachen und vor allem einen Rollback-Mechanismus zur Verfügung stellen.

Durch einen Rollback wird die Datenbank wieder in genau den Zustand versetzt, wie er vor dem Start einer Transaktion bestand. Auf diese Weise können Fehler abgefangen und rückgängig gemacht werden um Inkosistenzen im Datenbestand zu vermeiden - seien diese nun durch einen Anwenderfehler oder z.B. eine Verbindungsunterbrechung entstanden.