MySQL Beschreibung:
MySQL ist eine freie Software, die unter der General Public License (GPL) steht. MySQL kann auch mit einer kommerziellen Lizenz eingesetzt werden. (Duales Lizenzsystem)
Die Herkunft des Namens MySQL kann heute nicht mehr genau rekonstruiert werden. Seit 1996 wurden diverse Bibliotheken und Tools mit dem Präfix My geschrieben. Es wird spekuliert, dass der Name My der Tochter des Mitbegründers Monty Widenius vielleicht auch der Ursprung des Namens MySQL sein könnte.
Neben vielen Unix-Varianten, Mac OS X und Linux läuft MySQL auch auf Windows, OS/2 und i5/OS (ehemals OS/400).
Einer Datenbankmanagementsystem-Engine können mehrere Datenbanken zugeordnet werden. In einer Datenbank können mehrere Tabellen angelegt werden. Die Tabellen können von unterschiedlichem Typ sein. Die maximale Größe der Tabellen wird im Prinzip nur durch das Betriebssystem limitiert.
Während frühere MySQL-Versionen nur Teile des SQL3-Sprachumfangs unterstützten (z. B. keine View-Definitionen möglich), bietet die Version 5.0 einen wesentlich erweiterten Sprachumfang an, der weitgehend dem SQL3-Standard entspricht.
Seit der Version 3.23.xx steht ein Replikationssystem zur Verfügung. Es ist für den Einsatz in einem Computercluster ausgelegt. Dabei sind dem Datenbankmanagementsystem (DBMS) mehrere Datenbanken auf unterschiedlichen Rechner-Knoten zugeordnet. Eine der Datenbanken fungiert als Master, hier werden die Datenbankinhalte verändert. Das Replikationssystem verteilt anschließend die datenverändernden SQL-Kommandos auf die anderen Datenbanken, die diese Änderungen lokal auf ihren Tabellen nachvollziehen. Es handelt sich hierbei also um eine asynchrone Replikation der SQL-Kommandos.
Ein bevorzugtes Einsatzgebiet von MySQL ist die Datenspeicherung für Web-Services. MySQL wird häufig in Verbindung mit dem Webserver Apache und PHP eingesetzt. Diese Kombination wird entsprechend der Anfangsbuchstaben der beteiligten Software als LAMP, MAMP bzw. WAMP bezeichnet, je nachdem ob als Betriebssystem Linux, Mac OS oder Windows benutzt wird.
Einige Webdienste bedienen sich dieser Architektur. Sie betreiben mehrere hundert MySQL-Server, über die die Zugriffe aus dem Netz abgewickelt werden.
MySQL wird in über hundert Produkten als eingebettetes Datenbanksystem eingesetzt.
|
|
Geschichte:
MySQL ist 1994 zunächst als Clone für mSQL entwickelt worden und deshalb zu diesem voll kompatibel. Die Software wurde sofort unter der Versionsnummer 3.21 veröffentlicht, um zu signalisieren, dass sie auf einem (von Monty entwickelten) Kern basiert, der schon eine lange Geschichte hat. Sie war von Anfang an für große Datenmengen und sehr gute Performance ausgelegt, teils auf Kosten von Stabilität und Verfügbarkeit.
Die Menge der Eigenschaften hingegen war zunächst beschränkt. So gab es nur wenige Tabellentypen und keine Transaktionen. Typischerweise werden neue Eigenschaften auf Wunsch der Anwender implementiert, die dadurch ein sehr großes „Mitspracherecht“ haben.
Bereits mit der Version 3.23 verfügte MySQL über zwei Tabellentypen mit Transaktionen, wobei der eine (InnoDB) den Kriterien ACID genügt.
Alle Operationen, die allgemeine SQL-Eigenschaften betreffen, sind für alle Tabellentypen gleich, während die Eigenschaften der Tabellentypen aufgrund der unterschiedlichen Architektur sehr verschieden sein können. So besitzt der Typ MyISAM bereits seit der frühen Version 3.23 eine sehr leistungsfähige Volltext-Suche, die beim Typ InnoDB (noch) nicht implementiert ist.
Mit dem MySQL-Cluster steht außerdem ein Tabellentyp zur Verfügung, bei dem die gesamte Datenbank im Arbeitsspeicher vorgehalten wird. Im Gegenzug unterstützt dieser Datentyp synchrone Replikation zwischen allen Clusterknoten und ebenfalls Transaktionen, aber wiederum keine Volltextsuche.
Die Version 4.0 wurde im März 2003 freigegeben. Sie erlaubt die Nutzung von Unions und führte einen Query Cache ein, der die Ergebnisse häufig benutzter SQL-Anfragen zwischenspeichert.
Die Version 4.1 wurde im Oktober 2004 freigegeben. Sie bietet eine Datenspeicherung in unterschiedlichen Zeichensätzen pro Tabelle an. Es wird unter anderem auch Unicode unterstützt. Die Verwendung von Unterabfragen (Subqueries/Subselects) wird ermöglicht.
Die Version 5.0 wurde im Oktober 2005 freigegeben. Sie unterstützt alle im SQL3-Standard definierten Objekttypen.
Dieser Inhalt steht unter der GNU Lizenz
|
|