MySQL 5.1 Referenzhandbuch

Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.

Copyright 1997-2007 MySQL AB

Diese Dokumentation wird NICHT unter der GPL-Lizenz vertrieben. Die Benutzung dieser Dokumentation unterliegt folgenden Bedingungen: Sie dürfen diese Dokumentation ausschließich für private Zwecke ausdrucken. Eine Umwandlung in andere Formate ist gestattet, solange die ursprünglichen Inhalte nicht verändert oder in sonstiger Weise editiert werden. Sie dürfen diese Dokumentation weder veröffentlichen noch in sonstiger Form auf irgendeinem Medium vertreiben, außer wenn Sie die Dokumentation in ähnlicher Form wie MySQL selbst verteilen (das heißt elektronisch zum Download auf einer Website zusammen mit der Software) oder auf einer CD-ROM oder einem ähnlichen Medium, vorausgesetzt, dass die Dokumentation zusammen mit der Software auf diesem Medium verteilt wird. Jeder sonstige Gebrauch, beispielsweise die Verteilung gedruckter Exemplare, oder die Verwendung dieser Dokumentation in Gänze oder in Teilen in irgendeiner anderen Publikation bedarf der vorherigen schriftlichen Zustimmung eines dazu berechtigten Vertreters von MySQL AB. MySQL AB behält sich sämtliche Rechte an dieser Dokumentation vor, die nicht weiter oben ausdrücklich eingeräumt wurden.

Wenn Sie an weiteren Informationen interessiert sind, schreiben Sie bitte an .

Zusammenfassung

Das ist das MySQL-Referenzhandbuch. Es dokumentiert MySQL 5.1 bis 5.1.5-alpha.

Dokument erzeugt am: 2007-06-18 (revision: 443)


Inhaltsverzeichnis

Vorwort
1. Allgemeine Informationen über MySQL
1.1. Über dieses Handbuch
1.2. Konventionen in diesem Handbuch
1.3. Was ist MySQL AB?
1.4. Was ist MySQL?
1.4.1. Geschichte von MySQL
1.4.2. Die wichtigsten Features von MySQL
1.4.3. Wie stabil ist MySQL?
1.4.4. Wie groß können MySQL-Tabellen sein?
1.4.5. Jahr-2000-Konformität
1.5. Überblick über das Datenbanksystem MaxDB
1.5.1. Was ist MaxDB?
1.5.2. Geschichte von MaxDB
1.5.3. Features von MaxDB
1.5.4. Lizenzierung und Support
1.5.5. Unterschiede zwischen MaxDB und MySQL
1.5.6. Interoperabilität zwischen MaxDB und MySQL
1.5.7. Links zu MaxDB
1.6. MySQL-Roadmap
1.6.1. Was ist neu in MySQL 5.1?
1.7. Informationsquellen zu MySQL
1.7.1. Die MySQL-Mailinglisten
1.7.2. MySQL-Community-Support in den MySQL-Foren
1.7.3. Unterstützung für die MySQL-Community auf Internet Relay Chat (IRC)
1.8. Wie man Bugs oder Probleme meldet
1.9. Wie kompatibel zum SQL-Standard ist MySQL?
1.9.1. An welche Standards hält sich MySQL?
1.9.2. Auswahl der SQL-Modi
1.9.3. MySQL im ANSI-Modus laufen lassen
1.9.4. MySQL-Erweiterungen zu ANSI SQL92
1.9.5. MySQL: Unterschiede im Vergleich zu ANSI SQL92
1.9.6. Wie MySQL mit Constraints umgeht
2. Installation von MySQL
2.1. Allgemeines zur Installation
2.1.1. Betriebssysteme, die von MySQL unterstützt werden
2.1.2. Welche MySQL-Version Sie benutzen sollten
2.1.3. Woher man MySQL bekommt
2.1.4. Bestätigen der Paketintegrität mittels MD5-Prüfsummen oder GnuPG
2.1.5. Installationslayouts
2.2. Schnelle Standardinstallation von MySQL
2.3. Installation von MySQL unter Windows
2.3.1. Systemvoraussetzungen für Windows
2.3.2. Auswahl eines Installationspakets
2.3.3. Installation von MySQL mit dem automatischen Installer
2.3.4. Verwendung des MySQL-Installations-Assistenten
2.3.5. Verwendung des Konfigurations-Assistenten
2.3.6. Installation von MySQL aus einem Noinstall-Zip-Archiv
2.3.7. Entpacken des Installationsarchivs
2.3.8. Anlegen einer Optionsdatei
2.3.9. Auswahl des MySQL Server-Typs
2.3.10. Erstmaliges Starten des Servers
2.3.11. Starten von MySQL von der Windows-Befehlszeile
2.3.12. Starten von MySQL als Windows-Dienst
2.3.13. Test der MySQL-Installation
2.3.14. Troubleshooting einer MySQL-Installation unter Windows
2.3.15. Upgrade von MySQL unter Windows
2.3.16. MySQL unter Windows im Vergleich zu MySQL unter Unix
2.4. MySQL unter Linux installieren
2.5. Installation von MySQL unter Mac OS X
2.6. Installation von MySQL unter NetWare
2.7. Installation von MySQL auf anderen Unix-ähnlichen Systemen
2.8. Installation der Quelldistribution
2.8.1. Schnellinstallation, Überblick
2.8.2. Typische configure-Optionen
2.8.3. Installation vom Entwicklungs-Source-Tree
2.8.4. Probleme beim Kompilieren?
2.8.5. Anmerkungen zu MIT-pthreads
2.8.6. Windows-Quelldistribution
2.8.7. MySQL-Clients auf Windows kompilieren
2.9. Einstellungen und Tests nach der Installation
2.9.1. Nach der Installation unter Windows durchzuführende Schritte
2.9.2. Schritte nach der Installation unter Unix
2.9.3. Einrichtung der anfänglichen MySQL-Berechtigungen
2.10. MySQL aktualisieren (Upgrade/Downgrade)
2.10.1. Upgrade von MySQL 5.0
2.10.2. Upgrade auf eine andere Architektur
2.11. Downgrade von MySQL
2.12. Betriebssystemspezifische Anmerkungen
2.12.1. Linux (alle Linux-Versionen)
2.12.2. Anmerkungen zu Mac OS X
2.12.3. Anmerkungen zu Solaris
2.12.4. Anmerkungen zu BSD
2.12.5. Anmerkungen zu anderen Unixen
2.12.6. Anmerkungen zu OS/2
2.13. Anmerkungen zur Perl-Installation
2.13.1. Installation von Perl unter Unix
2.13.2. Installation von ActiveState-Perl unter Windows
2.13.3. Probleme bei der Benutzung der DBI/DBD-Schnittstelle von Perl
3. Einführung in MySQL: ein MySQL-Tutorial
3.1. Verbindung zum Server herstellen und trennen
3.2. Anfragen eingeben
3.3. Eine Datenbank erzeugen und benutzen
3.3.1. Eine Datenbank erzeugen und auswählen
3.3.2. Eine Tabelle erzeugen
3.3.3. Daten in Tabellen einladen
3.3.4. Informationen aus einer Tabelle abfragen
3.4. Informationen über Datenbanken und Tabellen
3.5. mysql im Stapelbetrieb
3.6. Beispiele gebräuchlicher Abfragen
3.6.1. Der höchste Wert einer Spalte
3.6.2. Die Zeile, die den höchsten Wert einer bestimmten Spalte enthält
3.6.3. Höchster Wert einer Spalte pro Gruppe
3.6.4. Die Zeilen, die das gruppenweise Maximum eines bestimmten Felds enthalten
3.6.5. Wie Benutzervariablen verwendet werden
3.6.6. Wie Fremdschlüssel verwendet werden
3.6.7. Über zwei Schlüssel suchen
3.6.8. Besuche pro Tag berechnen
3.6.9. Verwendung von AUTO_INCREMENT
3.7. Anfragen aus dem Zwillingsprojekt
3.7.1. Alle nicht verteilten Zwillinge finden
3.7.2. Eine Tabelle über den Zustand von Zwillingspaaren zeigen
3.8. MySQL mit Apache verwenden
4. Benutzung von MySQL-Programmen
4.1. Überblick über MySQL-Programme
4.2. Aufruf von MySQL-Programmen
4.3. Angabe von Programmoptionen
4.3.1. Befehlszeilenoptionen für mysqld
4.3.2. my.cnf-Optionsdateien
4.3.3. Verwendung von Umgebungsvariablen für die Angabe von Optionen
4.3.4. Verwendung von Optionen zum Setzen von Programmvariablen
5. Datenbankverwaltung
5.1. Überblick über serverseitige Programme und Dienstprogramme
5.2. mysqld — Der MySQL-Server
5.2.1. Befehlsoptionen für mysqld
5.2.2. Server-Systemvariablen
5.2.3. Verwendung von Server-Systemvariablen
5.2.4. Server-Statusvariablen
5.2.5. Der SQL-Modus des Servers
5.2.6. Herunterfahren des MySQL Servers
5.3. mysqld-max, ein erweiterter mysqld-Server
5.4. Startprogramme für den MySQL-Server
5.4.1. mysqld_safe — Startskript für den MySQL-Server
5.4.2. mysql.server — Startskript für den MySQL-Server
5.4.3. mysqld_multi — Verwalten mehrerer MySQL-Server
5.5. mysqlmanager — Der MySQL Instance Manager
5.5.1. MySQL Instance Manager: MySQL-Server starten
5.5.2. MySQL Instance Manager: Verbinden und Anlegen von Benutzerkonten
5.5.3. MySQL Instance Manager: Befehlsoptionen
5.5.4. MySQL Instance Manager: Konfigurationsdateien
5.5.5. MySQL Instance Manager: Unterstützte Befehle
5.6. mysql_fix_privilege_tables — Upgrade von MySQL-Systemtabellen
5.7. Absichern von MySQL gegen Angreifer
5.7.1. Allgemeine Sicherheitsrichtlinien
5.7.2. Absichern von MySQL gegen Angreifer
5.7.3. Startoptionen für mysqld in Bezug auf Sicherheit
5.7.4. Sicherheitsprobleme mit LOAD DATA LOCAL
5.7.5. Wie man MySQL als normaler Benutzer laufen läßt
5.8. Allgemeine Sicherheitsaspekte und das MySQL-Zugriffsberechtigungssystem
5.8.1. Was das Berechtigungssystem macht
5.8.2. Wie das Berechtigungssystem funktioniert
5.8.3. Von MySQL zur Verfügung gestellte Berechtigungen
5.8.4. Verbinden mit dem MySQL-Server
5.8.5. Zugriffskontrolle, Phase 1: Verbindungsüberprüfung
5.8.6. Zugriffskontrolle, Phase 2: Anfrageüberprüfung
5.8.7. Wann Berechtigungsänderungen wirksam werden
5.8.8. Gründe für Access denied-Fehler
5.8.9. Kennwort-Hashing ab MySQL 4.1
5.9. MySQL-Benutzerkontenverwaltung
5.9.1. MySQL-Benutzernamen und -Kennwörter
5.9.2. Hinzufügen neuer MySQL-Benutzer
5.9.3. Entfernen von Benutzerkonten in MySQL
5.9.4. Begrenzen von Benutzer-Ressourcen
5.9.5. Kennwörter einrichten
5.9.6. Wie Sie Ihre Kennwörter sicher halten
5.9.7. Verwendung sicherer Verbindungen
5.10. Datensicherung und Wiederherstellung
5.10.1. Datenbank-Datensicherungen
5.10.2. Beispielhaftes Vorgehen zur Datensicherung und Wiederherstellung
5.10.3. Zeitpunktbezogene Wiederherstellung
5.10.4. Benutzung von myisamchk für Tabellenwartung und Absturzreparatur
5.11. Lokalisierung und internationaler Gebrauch von MySQL
5.11.1. Der für Daten und zum Sortieren benutzte Zeichensatz
5.11.2. Nicht englische Fehlermeldungen
5.11.3. Einen neuen Zeichensatz hinzufügen
5.11.4. Die Zeichendefinitionsarrays
5.11.5. Unterstützung für String-Vergleiche
5.11.6. Unterstützung für Multi-Byte-Zeichen
5.11.7. Probleme mit Zeichensätzen
5.11.8. Zeitzonen-Unterstützung des MySQL-Servers
5.12. Die MySQL-Logdateien
5.12.1. Die Fehler-Logdatei
5.12.2. Die allgemeine Anfragen-Logdatei
5.12.3. Die binäre Update-Logdatei
5.12.4. Die Logdatei für langsame Anfragen
5.12.5. Wartung und Pflege der Logdateien
5.13. Mehrere MySQL-Server auf derselben Maschine laufen lassen
5.13.1. Mehrere Server unter Windows verwenden
5.13.2. Mehrere MySQL-Server unter Unix laufen lassen
5.13.3. Verwendung von Client-Programmen in einer Mehrserverumgebung
5.14. MySQL-Anfragen-Cache
5.14.1. Wie der Anfragen-Cache funktioniert
5.14.2. Anfragen-Cache-Optionen in SELECT
5.14.3. Konfiguration des Anfragen-Cache
5.14.4. Anfragen-Cache-Status und -Wartung
6. Replikation bei MySQL
6.1. Einführung in die Replikation
6.2. Replikation: Implementation
6.3. Zeilenbasierte Replikation
6.4. Replikation: Implementationsdetails
6.4.1. Thread-Zustände des Replikationsmasters
6.4.2. I/O-Thread-Zustände von Replikationsslaves
6.4.3. SQL-Thread-Zustände von Replikationsslaves
6.4.4. Relay- und Statusdateien bei der Replikation
6.5. Wie man eine Replikation aufsetzt
6.6. Replikation: Kompatibilität zwischen MySQL-Versionen
6.7. Upgrade eines Replikationssetups
6.7.1. Replikation: Upgrade auf 5.0
6.8. Replikation: Features und bekannte Probleme
6.9. Replikationsoptionen in my.cnf
6.10. Wie Server Replikationsregeln auswerten
6.11. Replikation: häufig gestellte Fragen
6.12. Vergleich zwischen anweisungsbasierter und zeilenbasierter Replikation
6.13. Replikation: Problemlösungen
6.14. Berichten von Replikationsfehlern und -problemen
6.15. Auto-Increment in der Multi-Master-Replikation
7. Optimierung
7.1. Überblick über die Optimierung
7.1.1. MySQL: konzeptionelle Einschränkungen
7.1.2. Applikationskonzepte unter Beachtung von Portabilitätsaspekten
7.1.3. Wofür benutzen wir MySQL?
7.1.4. Die MySQL-Benchmark-Reihe
7.1.5. Wie Sie Ihre eigenen Benchmarks benutzen
7.2. SELECT-Anweisungen und andere Anfragen optimieren
7.2.1. EXPLAIN-Syntax (Informationen über ein SELECT erhalten)
7.2.2. Anfragenperformance abschätzen
7.2.3. Geschwindigkeit von SELECT-Anweisungen
7.2.4. Optimierungen der WHERE-Klausel
7.2.5. Bereichsoptimierung
7.2.6. Optimierung durch Indexverschmelzung
7.2.7. IS NULL-Optimierung
7.2.8. Optimierung von DISTINCT
7.2.9. Optimierung von LEFT JOIN und RIGHT JOIN
7.2.10. Optimierung verschachtelter Joins
7.2.11. Vereinfachungsmöglichkeit für äußere Joins
7.2.12. ORDER BY-Optimierung
7.2.13. GROUP BY-Optimierung
7.2.14. LIMIT-Optimierung
7.2.15. Vermeidung von Tabellenscans
7.2.16. Geschwindigkeit von INSERT-Anweisungen
7.2.17. Geschwindigkeit von UPDATE-Anweisungen
7.2.18. Geschwindigkeit von DELETE-Anfragen
7.2.19. Weitere Optimierungstipps
7.3. Probleme mit Sperren
7.3.1. Wie MySQL Tabellen sperrt
7.3.2. Themen, die Tabellensperren betreffen
7.3.3. Gleichzeitige Einfügevorgänge
7.4. Optimierung der Datenbankstruktur
7.4.1. Überlegungen zum Datenbankdesign
7.4.2. Wie Sie Ihre Daten so klein wie möglich bekommen
7.4.3. Spaltenindizes
7.4.4. Mehrspaltige Indizes
7.4.5. Wie MySQL Indizes benutzt
7.4.6. Der MyISAM-Schlüssel-Cache
7.4.7. Sammlung von MyISAM-Indexstatistiken
7.4.8. Nachteile der Erzeugung großer Mengen von Tabellen in derselben Datenbank
7.4.9. Warum gibt es so viele offene Tabellen?
7.5. Optimierung des MySQL Servers
7.5.1. System/Kompilierzeitpunkt und Tuning der Startparameter
7.5.2. Serverparameter feineinstellen
7.5.3. Leistung des Abfragenoptimierers steuern
7.5.4. Wie Kompilieren und Linken die Geschwindigkeit von MySQL beeinflusst
7.5.5. Wie MySQL Speicher benutzt
7.5.6. Wie MySQL DNS benutzt
7.6. Festplatte, Anmerkungen
7.6.1. Symbolische Verknüpfungen
8. Client- und Hilfsprogramme
8.1. Überblick über Client- und Hilfsprogramme
8.2. myisamchk — Hilfsprogramm für die Tabellenwartung von MyISAM
8.2.1. Allgemeine Optionen für myisamchk
8.2.2. Prüfoptionen für myisamchk
8.2.3. Reparaturoptionen für myisamchk
8.2.4. Weitere Optionen für myisamchk
8.2.5. Speicherbenutzung von myisamchk
8.3. myisamlog — Anzeige von MyISAM-Logdateiinhalten
8.4. myisampack — Erzeugung komprimierter, schreibgeschützter MyISAM Tabellen
8.5. mysql — Das MySQL-Befehlszeilenwerkzeug mysql
8.5.1. mysql Optionen
8.5.2. mysql-Befehle
8.5.3. Wie SQL-Befehle aus einer Textdatei geladen werden
8.5.4. mysql: Tipps
8.6. mysqlaccess — Client für die Überprüfung von Zugriffsberechtigungen
8.7. mysqladmin — Client für die Verwaltung eines MySQL Servers
8.8. mysqlbinlog — Hilfsprogramm für die Verarbeitung binärer Logdateien
8.9. mysqlcheck — Hilfsprogramm für die Wartung und Reparatur von Tabellen
8.10. mysqldump — Programm zur Datensicherung
8.11. mysqlhotcopy — Backup-Programm für Datenbanken
8.12. mysqlimport — Programm zum Datenimport
8.13. mysqlshow — Anzeige von Informationen über Datenbanken, Tabellen und Spalten
8.14. mysqlslap — Client zur Lastemulation
8.15. mysql_zap — Prozesse beenden, die einem Muster entsprechen
8.16. perror — Erklärung der Fehlercodes
8.17. replace — Hilfsprogramm für String-Ersetzungen
9. Sprachstruktur
9.1. Literale: wie Strings und Zahlen geschrieben werden
9.1.1. Strings
9.1.2. Zahlen
9.1.3. Hexadezimale Werte
9.1.4. Boolesche Werte
9.1.5. Bitfeldwerte
9.1.6. NULL-Werte
9.2. Datenbank-, Tabellen-, Index-, Spalten- und Aliasnamen
9.2.1. Qualifikatoren für Bezeichner
9.2.2. Groß-/Kleinschreibung in Namen
9.3. Benutzerdefinierte Variablen
9.4. Kommentar
9.5. Ist MySQL pingelig hinsichtlich reservierter Wörter?
10. Zeichensatz-Unterstützung
10.1. Zeichensätze und Sortierfolgen im Allgemeinen
10.2. Zeichensätze und Sortierfolgen in MySQL
10.3. Festlegen von Zeichensätzen und Sortierfolgen
10.3.1. Serverzeichensatz und -sortierfolge
10.3.2. Datenbankzeichensatz und -sortierfolge
10.3.3. Tabellenzeichensatz und -sortierfolge
10.3.4. Spaltenzeichensatz und -sortierfolge
10.3.5. Zeichensatz und Sortierfolge literaler Strings
10.3.6. Nationaler Zeichensatz
10.3.7. Beispiele für die Zuordnung von Zeichensatz und Sortierfolge
10.3.8. Kompatibilität mit anderen Datenbanksystemen
10.4. Verbindungszeichensatz und -sortierfolge
10.5. Probleme mit Sortierfolgen
10.5.1. Verwendung von COLLATE in SQL-Anweisungen
10.5.2. Rangfolgen von COLLATE-Klauseln
10.5.3. Der BINARY-Operator
10.5.4. Spezialfälle, in denen die Festlegung der Sortierfolge problematisch ist
10.5.5. Sortierfolgen müssen für den richtigen Zeichensatz angegeben werden
10.5.6. Beispiel für die Auswirkung von Sortierfolgen
10.6. Operationen, auf die sich die Zeichensatzunterstützung auswirkt
10.6.1. Ergebnis-Strings
10.6.2. CONVERT() und CAST()
10.6.3. SHOW-Anweisungen und INFORMATION_SCHEMA
10.7. Unicode-Unterstützung
10.8. UTF8 für Metadaten
10.9. Zeichensätze und Sortierfolgen, die MySQL unterstützt
10.9.1. Unicode-Zeichensätze
10.9.2. Westeuropäische Zeichensätze
10.9.3. Mitteleuropäische Zeichensätze
10.9.4. Zeichensätze für Südeuropa und den Mittleren Osten
10.9.5. Baltische Zeichensätze
10.9.6. Kyrillische Zeichensätze
10.9.7. Asiatische Zeichensätze
11. Datentypen
11.1. Überblick über Datentypen
11.1.1. Überblick über numerische Datentypen
11.1.2. Überblick über Datums- und Zeittypen
11.1.3. Überblick über String-Typen
11.1.4. Vorgabewerte von Datentypen
11.2. Numerische Datentypen
11.3. Datums- und Zeittypen
11.3.1. Die DATETIME-, DATE- und TIMESTAMP-Typen
11.3.2. Der TIME-Typ
11.3.3. Der YEAR-Typ
11.3.4. Jahr-2000-Probleme und Datumstypen
11.4. String-Typen
11.4.1. Die CHAR- und VARCHAR-Typen
11.4.2. Die BINARY- und VARBINARY-Typen
11.4.3. Die Spaltentypen BLOB und TEXT
11.4.4. Der Spaltentyp ENUM
11.4.5. Der Spaltentyp SET
11.5. Speicherbedarf von Spaltentypen
11.6. Auswahl des richtigen Datentyps für eine Spalte
11.7. Verwendung von Datentypen anderer Datenbanken
12. Funktionen für die Benutzung in SELECT- und WHERE-Klauseln
12.1. Operatoren
12.1.1. Rangfolge von Operatoren
12.1.2. Typumwandlung bei der Auswertung von Ausdrücken
12.1.3. Vergleichsoperatoren
12.1.4. Logische Operatoren
12.2. Ablaufsteuerungsfunktionen
12.3. String-Funktionen
12.3.1. String-Vergleichsfunktionen
12.4. Numerische Funktionen
12.4.1. Arithmetische Operationen
12.4.2. Mathematische Funktionen
12.5. Datums- und Zeitfunktionen
12.6. Welchen Kalender benutzt MySQL?
12.7. MySQL-Volltextsuche
12.7.1. Boolesche Volltextsuche
12.7.2. Volltextsuche mit Abfragenerweiterung
12.7.3. Stoppwörter in der Volltextsuche
12.7.4. Beschränkungen der Volltextsuche
12.7.5. MySQL-Volltextsuche feineinstellen
12.8. Cast-Funktionen und Operatoren
12.9. XML-Funktionen
12.10. Weitere Funktionen
12.10.1. Bitfunktionen
12.10.2. Verschlüsselungs- und Kompressionsfunktionen
12.10.3. Informationsfunktionen
12.10.4. Verschiedene Funktionen
12.11. Funktionen und Modifizierer für die Verwendung in GROUP BY-Klauseln
12.11.1. Funktionen zur Benutzung in GROUP BY-Klauseln
12.11.2. GROUP BY-Modifizierer
12.11.3. GROUP BY mit versteckten Feldern
13. SQL-Anweisungssyntax
13.1. Datendefinition: CREATE, DROP, ALTER
13.1.1. ALTER DATABASE
13.1.2. ALTER TABLE
13.1.3. CREATE DATABASE
13.1.4. CREATE INDEX
13.1.5. CREATE TABLE
13.1.6. DROP DATABASE
13.1.7. DROP INDEX
13.1.8. DROP TABLE
13.1.9. RENAME TABLE
13.2. Datenmanipulation: SELECT, INSERT, UPDATE, DELETE
13.2.1. DELETE
13.2.2. DO
13.2.3. HANDLER
13.2.4. INSERT
13.2.5. LOAD DATA INFILE
13.2.6. REPLACE
13.2.7. SELECT
13.2.8. Syntax von Unterabfragen
13.2.9. TRUNCATE
13.2.10. UPDATE
13.3. Grundlegende Befehle des MySQL-Dienstprogramms für Benutzer
13.3.1. DESCRIBE (Informationen über Spalten abrufen)
13.3.2. USE
13.4. Transaktionale und Sperrbefehle von MySQL
13.4.1. BEGIN/COMMIT/ROLLBACK
13.4.2. Statements können nicht zurückgerollt werden
13.4.3. Anweisungen, die implizite Commits verursachen
13.4.4. SAVEPOINT und ROLLBACK TO SAVEPOINT
13.4.5. LOCK TABLES und UNLOCK TABLES
13.4.6. SET TRANSACTION
13.4.7. XA-Transaktionen
13.5. Anweisungen zur Datenbankadministration
13.5.1. Anweisungen zur Benutzerkontenverwaltung
13.5.2. Anweisungen für die Tabellenwartung
13.5.3. SET
13.5.4. SHOW
13.5.5. Weitere Verwaltungsanweisungen
13.6. SQL-Befehle in Bezug auf Replikation
13.6.1. SQL-Anweisungen für die Steuerung von Master-Servern
13.6.2. SQL-Anweisungen für die Steuerung von Slave-Servern
13.7. SQL-Syntax für vorbereitete Anweisungen
14. Speicher-Engines und Tabellentypen
14.1. Die MyISAM-Speicher-Engine
14.1.1. MyISAM-Startoptionen
14.1.2. Für Indizes benötigter Speicherplatz
14.1.3. MyISAM-Tabellenformate
14.1.4. MyISAM-Tabellenprobleme
14.2. InnoDB-Tabellen
14.2.1. Überblick über InnoDB-Tabellen
14.2.2. Kontaktinformationen
14.2.3. Konfiguration
14.2.4. InnoDB: Startoptionen und Systemvariablen
14.2.5. InnoDB-Tablespace erzeugen
14.2.6. InnoDB-Tabellen erzeugen
14.2.7. Hinzufügen und Entfernen von InnoDB-Daten- und -Logdateien
14.2.8. Sichern und Wiederherstellen einer InnoDB-Datenbank
14.2.9. Eine InnoDB-Datenbank auf eine andere Maschine verschieben
14.2.10. InnoDB-Transaktionsmodell
14.2.11. Tipps zur Leistungssteigerung
14.2.12. Implementierung der Multiversionierung
14.2.13. Tabellen- und Indexstrukturen
14.2.14. Verwaltung von Speicherplatz für Dateien und von Festplattenein- und -ausgaben
14.2.15. InnoDB-Fehlerbehandlung
14.2.16. Beschränkungen von InnoDB-Tabellen
14.2.17. InnoDB-Troubleshooting
14.3. Die MERGE-Speicher-Engine
14.3.1. MERGE-Tabellenprobleme
14.4. Die MEMORY-Speicher-Engine
14.5. Die BDB-Speicher-Engine
14.5.1. Betriebssysteme, die von BDB unterstützt werden
14.5.2. BDB installieren
14.5.3. BDB-Startoptionen
14.5.4. Kennzeichen von BDB-Tabellen
14.5.5. Einschränkungen bei Verwendung von BDB-Tabellen
14.5.6. Fehler, die bei der Benutzung von BDB-Tabellen auftreten können
14.6. Die EXAMPLE-Speicher-Engine
14.7. Die FEDERATED-Speicher-Engine
14.7.1. Beschreibung der FEDERATED-Speicher-Engine
14.7.2. Benutzung von FEDERATED-Tabellen
14.7.3. Beschränkungen der FEDERATED-Speicher-Engine
14.8. Die ARCHIVE-Speicher-Engine
14.9. Die CSV-Speicher-Engine
14.10. Die BLACKHOLE-Speicher-Engine
15. Erstellung einer eigenen Speicher-Engine
15.1. Einführung
15.2. Überblick
15.3. Quelldateien für Speicher-Engines erstellen
15.4. Erstellung des Handlerton
15.5. Die Erzeugung von Handlern
15.6. Definiton von Dateierweiterungen
15.7. Tabellen anlegen
15.8. Tabellen öffnen
15.9. Einfaches Tabellenscanning implementieren
15.9.1. Implementierung der Funktion store_lock()
15.9.2. Implementierung der Funktion external_lock()
15.9.3. Implementierung der Funktion rnd_init()
15.9.4. Implementierung der Funktion info()
15.9.5. Implementierung der Funktion extra()
15.9.6. Implementierung der Funktion rnd_next()
15.10. Tabellen schließen
15.11. INSERT-Unterstützung für Speicher-Engines
15.12. UPDATE-Unterstützung für Speicher-Engines
15.13. DELETE-Unterstützung für Speicher-Engines
15.14. Unterstützung für nichtsequenzielle Leseoperationen
15.14.1. Implementierung der Funktion position()
15.14.2. Implementierung der Funktion rnd_pos()
15.15. Unterstützung für Indizes
15.15.1. Überblick über Indizes
15.15.2. Indexinformationen während CREATE TABLE-Operationen erhalten
15.15.3. Erzeugen von Indexschlüsseln
15.15.4. Schlüsselinformationen parsen
15.15.5. Indexinformationen an den Optimierer liefern
15.15.6. Nutzung des Indexes vorbereiten mit index_init()
15.15.7. Aufräumen mit index_end()
15.15.8. Implementierung der Funktion index_read()
15.15.9. Implementierung der Funktion index_read_idx()
15.15.10. Implementierung der Funktion index_next()
15.15.11. Implementierung der Funktion index_prev()
15.15.12. Implementierung der Funktion index_first()
15.15.13. Implementierung der Funktion index_last()
15.16. Unterstützung für Transaktionen
15.16.1. Überblick über Transaktionen
15.16.2. Eine Transaktion starten
15.16.3. Implementierung von ROLLBACK
15.16.4. Implementierung von COMMIT
15.16.5. Unterstützung für Savepoints
15.17. Die API-Referenz
15.17.1. bas_ext
15.17.2. close
15.17.3. create
15.17.4. delete_row
15.17.5. delete_table
15.17.6. external_lock
15.17.7. extra
15.17.8. index_end
15.17.9. index_first
15.17.10. index_init
15.17.11. index_last
15.17.12. index_next
15.17.13. index_prev
15.17.14. index_read_idx
15.17.15. index_read
15.17.16. info
15.17.17. open
15.17.18. position
15.17.19. records_in_range
15.17.20. rnd_init
15.17.21. rnd_next
15.17.22. rnd_pos
15.17.23. start_stmt
15.17.24. store_lock
15.17.25. update_row
15.17.26. write_row
16. MySQL Cluster
16.1. MySQL Cluster: Überblick
16.2. MySQL Cluster: grundlegende Konzepte
16.2.1. MySQL Cluster: Knoten, Knotengruppen, Repliken und Partitionen
16.3. Einfache Schritt-für-Schritt-Anleitung für mehrere Computer
16.3.1. Hardware, Software und Netzwerk
16.3.2. Installation auf mehreren Computern
16.3.3. Konfiguration im Mehrcomputerbetrieb
16.3.4. Erster Start
16.3.5. Beispieldaten einladen und Abfragen ausführen
16.3.6. Sicheres Herunterfahren und Neustarten
16.4. MySQL Cluster: Konfiguration
16.4.1. MySQL Cluster vom Quellcode bauen
16.4.2. Installation der Software
16.4.3. Schnelle Testeinrichtung von MySQL Cluster
16.4.4. Konfigurationsdatei
16.5. Prozessverwaltung in MySQL Cluster
16.5.1. Verwendung des MySQL Server-Prozesses für MySQL Cluster
16.5.2. ndbd, der Speicher-Engine-Node-Prozess
16.5.3. ndb_mgmd, der Management-Server-Prozess
16.5.4. ndb_mgm, der Management-Client-Prozess
16.5.5. Befehlsoptionen für MySQL Cluster-Prozesse
16.6. Management von MySQL Cluster
16.6.1. MySQL Cluster: Startphasen
16.6.2. Befehle des Management-Clients
16.6.3. Ereignisberichte, die MySQL Cluster erzeugt
16.6.4. Einbenutzermodus
16.6.5. Online-Backup eines MySQL Clusters
16.7. Verwendung von Hochgeschwindigkeits-Interconnects mit MySQL Cluster
16.7.1. Konfiguration von MySQL Cluster für SCI Sockets
16.7.2. Auswirkungen der Cluster-Interconnects verstehen
16.8. Bekannte Beschränkungen von MySQL Cluster
16.9. MySQL Cluster: Roadmap für die Entwicklung
16.9.1. MySQL Cluster: Änderungen in MySQL 5.0
16.9.2. MySQL 5.1 Roadmap für die Entwicklung von MySQL Cluster
16.10. MySQL Cluster: FAQ
16.11. MySQL Cluster: Glossar
17. Partitionierung
17.1. Überblick über die Partitionierung in MySQL
17.2. Partitionstypen
17.2.1. RANGE-Partitionierung
17.2.2. LIST-Partitionierung
17.2.3. HASH-Partitionierung
17.2.4. KEY-Partitionierung
17.2.5. Unterpartitionen
17.2.6. Wie die MySQL-Partitionierung NULL-Werte handhabt
17.3. Partitionsverwaltung
17.3.1. Verwaltung von RANGE- und LIST-Partitionen
17.3.2. Verwaltung von HASH- und KEY-Partitionen
17.3.3. Wartung von Partitionen
17.3.4. Abruf von Informationen über Partitionen
17.4. Beschränkungen und Grenzen der Partitionierung
18. Raumbezogene Erweiterungen in MySQL
18.1. Einführung in die raumbezogenen Funktionen von MySQL
18.2. Das OpenGIS-Geometriemodell
18.2.1. Hierarchie der Geometrieklassen
18.2.2. Die Klasse Geometry
18.2.3. Die Klasse Point
18.2.4. Die Klasse Curve
18.2.5. Die Klasse LineString
18.2.6. Die Klasse Surface
18.2.7. Die Klasse Polygon
18.2.8. Die Klasse GeometryCollection
18.2.9. Die Klasse MultiPoint
18.2.10. Die Klasse MultiCurve
18.2.11. Die Klasse MultiLineString
18.2.12. Die Klasse MultiSurface
18.2.13. Die Klasse MultiPolygon
18.3. Unterstützte raumbezogene Datenformate
18.3.1. Well-Known Text(WKT)-Format
18.3.2. Well-Known Binary(WKB)-Format
18.4. Erzeugen einer MySQL-Datenbank mit raumbezogenen Werten
18.4.1. Raumbezogene Datentypen in MySQL
18.4.2. Erzeugung raumbezogener Werte
18.4.3. Erzeugung raumbezogener Spalten
18.4.4. Füllen raumbezogener Spalten
18.4.5. Abfragen raumbezogener Daten
18.5. Analyse raumbezogener Informationen
18.5.1. Umwandlungsfunktionen für das Geometrieformat
18.5.2. Geometry-Funktionen
18.5.3. Funktionen, die neue geometrische Objekte aus bestehenden erzeugen
18.5.4. Funktionen zum Testen raumbezogener Beziehungen zwischen geometrischen Objekten
18.5.5. Relationen auf geometrischen Minimal Bounding Rectangles (MBRs)
18.5.6. Funktionen, die raumbezogene Beziehungen zwischen Geometrien überprüfen
18.6. Optimierung der raumbezogenen Analyse
18.6.1. Erzeugung raumbezogener Indizes
18.6.2. Verwendung eines raumbezogenen Indizes
18.7. MySQL-Konformität und Kompatibilität
19. Gespeicherte Prozeduren und Funktionen
19.1. Gespeicherte Routinen und die Berechtigungstabellen
19.2. Syntax gespeicherter Prozeduren
19.2.1. CREATE PROCEDURE und CREATE FUNCTION
19.2.2. ALTER PROCEDURE und ALTER FUNCTION
19.2.3. DROP PROCEDURE und DROP FUNCTION
19.2.4. Syntax der CALL-Anweisung
19.2.5. BEGIN ... END-Syntax für komplexe Anweisungen
19.2.6. Syntax der DECLARE-Anweisung
19.2.7. Variablen in gespeicherten Routinen
19.2.8. Bedingungen und Handler
19.2.9. Cursor
19.2.10. Konstrukte für die Ablaufsteuerung
19.3. Gespeicherte Prozeduren, Funktionen, Trigger und Replikation: häufig gestellte Fragen
19.4. Binärloggen gespeicherter Routinen und Trigger
20. Trigger
20.1. CREATE TRIGGER
20.2. DROP TRIGGER
20.3. Verwendung von Triggern
21. Views
21.1. ALTER VIEW
21.2. CREATE VIEW
21.3. DROP VIEW
21.4. SHOW CREATE VIEW
22. Die Datenbank INFORMATION_SCHEMA
22.1. Die Tabelle INFORMATION_SCHEMA SCHEMATA
22.2. Die Tabelle INFORMATION_SCHEMA TABLES
22.3. Die Tabelle INFORMATION_SCHEMA COLUMNS
22.4. Die Tabelle INFORMATION_SCHEMA STATISTICS
22.5. Die Tabelle INFORMATION_SCHEMA USER_PRIVILEGES
22.6. Die Tabelle INFORMATION_SCHEMA SCHEMA_PRIVILEGES
22.7. Die Tabelle INFORMATION_SCHEMA TABLE_PRIVILEGES
22.8. Die Tabelle INFORMATION_SCHEMA COLUMN_PRIVILEGES
22.9. Die Tabelle INFORMATION_SCHEMA CHARACTER_SETS
22.10. Die Tabelle INFORMATION_SCHEMA COLLATIONS
22.11. Die Tabelle INFORMATION_SCHEMA COLLATION_CHARACTER_SET_APPLICABILITY
22.12. Die Tabelle INFORMATION_SCHEMA TABLE_CONSTRAINTS
22.13. Die Tabelle INFORMATION_SCHEMA KEY_COLUMN_USAGE
22.14. Die Tabelle INFORMATION_SCHEMA ROUTINES
22.15. Die Tabelle INFORMATION_SCHEMA VIEWS
22.16. Die Tabelle INFORMATION_SCHEMA TRIGGERS
22.17. Die Tabelle INFORMATION_SCHEMA PLUGINS
22.18. Die Tabelle INFORMATION_SCHEMA ENGINES
22.19. Die Tabelle INFORMATION_SCHEMA PARTITIONS
22.20. Die Tabelle INFORMATION_SCHEMA EVENTS
22.21. Weitere INFORMATION_SCHEMA-Tabellen
22.22. Erweiterungen der SHOW-Anweisungen
23. Präzisionsberechnungen
23.1. Typen numerischer Werte
23.2. Änderungen beim Datentyp DECIMAL
23.3. Behandlung von Ausdrücken
23.4. Rundungsverhalten
23.5. Beispiele für Präzisionsberechnungen
24. APIs und Bibliotheken
24.1. libmysqld, die eingebettete MySQL Server-Bibliothek
24.1.1. Überblick über die eingebettete MySQL Server-Bibliothek
24.1.2. Programme mit libmysqld kompilieren
24.1.3. Einschränkungen bei der Benutzung des eingebetteten MySQL Servers
24.1.4. Optionen des eingebetteten Servers
24.1.5. Ein einfaches Embedded Server-Beispiel
24.1.6. Lizenzierung des eingebetteten Servers
24.2. MySQL-C-API
24.2.1. C-API: Datentypen
24.2.2. C-API: Funktionsüberblick
24.2.3. C-API: Funktionsbeschreibungen
24.2.4. C-API: Prepared Statements
24.2.5. C-API: Prepared Statement-Datentypen
24.2.6. C-API Prepared Statements: Funktionsüberblick
24.2.7. C-API Prepared Statements: Funktionsbeschreibungen
24.2.8. C-API: Probleme bei Prepared Statements
24.2.9. C-API: Behandlung der Ausführung mehrerer Anweisungen
24.2.10. C-API: Behandlung von Datums- und Zeitwerten
24.2.11. C-Threaded-Funktionsbeschreibungen
24.2.12. C Embedded Server: Funktionsbeschreibungen
24.2.13. Häufige Fragen und Probleme bei der Benutzung der C-API
24.2.14. Clientprogramme bauen
24.2.15. Wie man einen Thread-Client herstellt
24.3. MySQLs PHP-API
24.3.1. Allgemeine Probleme mit MySQL und PHP
24.4. MySQLs Perl-API
24.5. MySQL-C++-APIs
24.5.1. Borland C++
24.6. MySQL-Python-APIs
24.7. MySQL-Tcl-APIs
24.8. MySQL-Eiffel-Wrapper
24.9. MySQL-Hilfsprogramme für die Programmentwicklung
24.9.1. msql2mysql — Umwandeln von mSQL-Programmen für die Benutzung mit MySQL
24.9.2. mysql_config — Kompilieroptionen zum Kompilieren von Clients erhalten
25. Connectors
25.1. MySQL Connector/ODBC
25.1.1. Einführung in MyODBC
25.1.2. Installation von MyODBC
25.1.3. MyODBC: Konfiguration
25.1.4. MyODBC-Beispiele
25.1.5. MyODBC-Referenz
25.1.6. Hinweise und Tipps zu MyODBC
25.1.7. MyODBC-Support
25.2. Connector/NET
25.2.1. Versionen von Connector/NET
25.2.2. Installation von Connector/NET
25.2.3. Hinweise und Tipps zu Connector/NET
25.2.4. Support für Connector/NET
25.3. MySQL Connector/J
25.3.1. Connector/J-Versionen
25.3.2. Installation von Connector/J
25.3.3. Connector/J-Beispiele
25.3.4. Connector/J (JDBC)-Referenz
25.3.5. Hinweise und Tipps zu Connector/J
25.3.6. Support für Connector/J
25.4. MySQL Connector/MXJ
25.4.1. Einführung in Connector/MXJ
25.4.2. Installation von Connector/MXJ
25.4.3. Konfiguration von Connector/MXJ
25.4.4. Referenz zu Connector/MXJ
25.4.5. Hinweise und Tipps zu Connector/MXJ
25.4.6. Support für Connector/MXJ
26. MySQL erweitern
26.1. Hinzufügen neuer Funktionen zu MySQL
26.1.1. MySQL-Threads
26.1.2. MySQL-Testsystem
26.2. Die MySQL-Plug-In-Schnittstelle
26.2.1. Charakteristiken der Plug-In-Schnittstelle
26.2.2. Volltext-Parser-Plug-Ins
26.2.3. INSTALL PLUGIN
26.2.4. UNINSTALL PLUGIN
26.2.5. Schreiben von Plug-Ins
26.3. Hinzufügen neuer Funktionen zu MySQL
26.3.1. Features der Schnittstelle für benutzerdefinierte Funktionen (UDF)
26.3.2. CREATE FUNCTION/DROP FUNCTION
26.3.3. DROP FUNCTION
26.3.4. Hinzufügen einer neuen benutzerdefinierten Funktion
26.3.5. Hinzufügen einer neuen nativen Funktion
26.4. Hinzufügen neuer Prozeduren zu MySQL
26.4.1. PROCEDURE ANALYSE
26.4.2. Schreiben einer Prozedur
A. Probleme und häufig auftretende Fehler
A.1. Wie man feststellt, was Probleme verursacht
A.2. Einige häufige Fehler bei der Benutzung von MySQL
A.2.1. Access denied-Fehler
A.2.2. Can't connect to [local] MySQL server-Fehler
A.2.3. Client does not support authentication protocol
A.2.4. Interaktive Kennworteingabe schlägt fehl
A.2.5. Host '...' is blocked-Fehler
A.2.6. Too many connections-Fehler
A.2.7. No free memory-Fehler
A.2.8. MySQL server has gone away-Fehler
A.2.9. Packet too large-Fehler
A.2.10. Kommunikationsfehler/abgebrochene Verbindung
A.2.11. The table is full-Fehler
A.2.12. Can't create/write to file-Fehler
A.2.13. Command out of sync-Fehler in Client
A.2.14. User ignored-Fehler
A.2.15. Table 'xxx' doesn't exist-Fehler
A.2.16. Can't initialize charset xxx-Fehler
A.2.17. Datei nicht gefunden
A.3. Installationsbezogene Themen
A.3.1. Probleme beim Linken mit der MySQL-Clientbibliothek
A.3.2. Probleme mit Dateirechten
A.4. Administrationsbezogene Themen
A.4.1. Wie ein vergessenes Kennwort zurückgesetzt wird
A.4.2. Was zu tun ist, wenn MySQL andauernd abstürzt
A.4.3. Wie MySQL mit vollen Festplatten umgeht
A.4.4. Wohin MySQL temporäre Dateien speichert
A.4.5. Wie Sie die MySQL-Socketdatei /tmp/mysql.sock schützen oder ändern
A.4.6. Probleme mit Zeitzonen
A.5. Anfragenbezogene Themen
A.5.1. Groß-/Kleinschreibung beim Suchen
A.5.2. Probleme bei der Benutzung von DATE-Spalten
A.5.3. Probleme mit NULL-Werten
A.5.4. Probleme mit alias
A.5.5. Rollback schlägt bei nichttransaktionssicheren Tabellen fehl
A.5.6. Zeilen aus verwandten Tabellen löschen
A.5.7. Lösung von Problemen mit nicht übereinstimmenden Zeilen
A.5.8. Probleme mit Fließkommavergleichen
A.6. Probleme im Zusammenhang mit dem Optimierer
A.7. Tabellendefinitionsbezogene Themen
A.7.1. Probleme mit ALTER TABLE
A.7.2. Wie man die Reihenfolge der Spalten in einer Tabelle ändert
A.7.3. Probleme mit TEMPORARY TABLE
A.8. Bekannte Fehler und konzeptionelle Unzulänglichkeiten in MySQL
A.8.1. Offene Probleme in MySQL
B. Fehlercodes und -meldungen
B.1. Fehlercodes und -meldungen des Servers
B.2. Fehlercodes und -meldungen der Clients
C. Danksagungen
C.1. Entwickler bei MySQL AB
C.2. Kontributoren zu MySQL
C.3. Redakteure und Übersetzer
C.4. Von MySQL benutzte und mit MySQL ausgelieferte Bibliotheken
C.5. Pakete, die MySQL unterstützen
C.6. Werkzeuge, die zum Herstellen von MySQL benutzt werden
C.7. Unterstützer von MySQL
D. MySQL-Änderungsverlauf (Change History)
D.1. Änderungen in Release 5.1.x (Entwicklung)
D.1.1. Änderungen in Release 5.1.6 (Noch nicht veröffentlicht)
D.1.2. Änderungen in Release 5.1.5 (10. Januar 2006)
D.1.3. Änderungen in Release 5.1.4 (21. Dezember 2005)
D.1.4. Änderungen in Release 5.1.3 (29. November 2005)
D.1.5. Änderungen in Release 5.1.2 (Nicht veröffentlicht)
D.1.6. Änderungen in Release 5.1.1 (Nicht veröffentlicht)
D.2. Änderungen in MyODBC
D.2.1. Änderungen in MyODBC 3.51.13
D.2.2. Änderungen in MyODBC 3.51.12
D.2.3. Änderungen in MyODBC 3.51.11
D.3. MySQL Connector/J Change History
D.3.1. Changes in MySQL Connector/J 5.0.3 (26 July 2006)
D.3.2. Changes in MySQL Connector/J 5.0.2-beta (11 July 2006)
D.3.3. Changes in MySQL Connector/J 5.0.1-beta (Not Released)
D.3.4. Changes in MySQL Connector/J 5.0.0-beta (22 December 2005)
D.3.5. Changes in MySQL Connector/J 3.1.14 (not yet released)
D.3.6. Changes in MySQL Connector/J 3.1.13 (26 May 2006)
D.3.7. Changes in MySQL Connector/J 3.1.12 (30 November 2005)
D.3.8. Changes in MySQL Connector/J 3.1.11-stable (07 October 2005)
D.3.9. Changes in MySQL Connector/J 3.1.10-stable (23 June 2005)
D.3.10. Changes in MySQL Connector/J 3.1.9-stable (22 June 2005)
D.3.11. Changes in MySQL Connector/J 3.1.8-stable (14 April 2005)
D.3.12. Changes in MySQL Connector/J 3.1.7-stable (18 February 2005)
D.3.13. Changes in MySQL Connector/J 3.1.6-stable (23 December 2004)
D.3.14. Changes in MySQL Connector/J 3.1.5-gamma (02 December 2004)
D.3.15. Changes in MySQL Connector/J 3.1.4-beta (04 September 2004)
D.3.16. Changes in MySQL Connector/J 3.1.3-beta (07 July 2004)
D.3.17. Changes in MySQL Connector/J 3.1.2-alpha (09 June 2004)
D.3.18. Changes in MySQL Connector/J 3.1.1-alpha (14 February 2004)
D.3.19. Changes in MySQL Connector/J 3.1.0-alpha (18 February 2003)
D.3.20. Changes in MySQL Connector/J 3.0.17-ga (23 June 2005)
D.3.21. Changes in MySQL Connector/J 3.0.16-ga (15 November 2004)
D.3.22. Changes in MySQL Connector/J 3.0.15-production (04 September 2004)
D.3.23. Changes in MySQL Connector/J 3.0.14-production (28 May 2004)
D.3.24. Changes in MySQL Connector/J 3.0.13-production (27 May 2004)
D.3.25. Changes in MySQL Connector/J 3.0.12-production (18 May 2004)
D.3.26. Changes in MySQL Connector/J 3.0.11-stable (19 February 2004)
D.3.27. Changes in MySQL Connector/J 3.0.10-stable (13 January 2004)
D.3.28. Changes in MySQL Connector/J 3.0.9-stable (07 October 2003)
D.3.29. Changes in MySQL Connector/J 3.0.8-stable (23 May 2003)
D.3.30. Changes in MySQL Connector/J 3.0.7-stable (08 April 2003)
D.3.31. Changes in MySQL Connector/J 3.0.6-stable (18 February 2003)
D.3.32. Changes in MySQL Connector/J 3.0.5-gamma (22 January 2003)
D.3.33. Changes in MySQL Connector/J 3.0.4-gamma (06 January 2003)
D.3.34. Changes in MySQL Connector/J 3.0.3-dev (17 December 2002)
D.3.35. Changes in MySQL Connector/J 3.0.2-dev (08 November 2002)
D.3.36. Changes in MySQL Connector/J 3.0.1-dev (21 September 2002)
D.3.37. Changes in MySQL Connector/J 3.0.0-dev (31 July 2002)
D.3.38. Changes in MySQL Connector/J 2.0.14 (16 May 2002)
D.3.39. Changes in MySQL Connector/J 2.0.13 (24 April 2002)
D.3.40. Changes in MySQL Connector/J 2.0.12 (07 April 2002)
D.3.41. Changes in MySQL Connector/J 2.0.11 (27 January 2002)
D.3.42. Changes in MySQL Connector/J 2.0.10 (24 January 2002)
D.3.43. Changes in MySQL Connector/J 2.0.9 (13 January 2002)
D.3.44. Changes in MySQL Connector/J 2.0.8 (25 November 2001)
D.3.45. Changes in MySQL Connector/J 2.0.7 (24 October 2001)
D.3.46. Changes in MySQL Connector/J 2.0.6 (16 June 2001)
D.3.47. Changes in MySQL Connector/J 2.0.5 (13 June 2001)
D.3.48. Changes in MySQL Connector/J 2.0.3 (03 December 2000)
D.3.49. Changes in MySQL Connector/J 2.0.1 (06 April 2000)
D.3.50. Changes in MySQL Connector/J 2.0.0pre5 (21 February 2000)
D.3.51. Changes in MySQL Connector/J 2.0.0pre4 (10 January 2000)
D.3.52. Changes in MySQL Connector/J 2.0.0pre (17 August 1999)
D.3.53. Changes in MySQL Connector/J 1.2b (04 July 1999)
D.3.54. Changes in MySQL Connector/J 1.2a (14 April 1999)
D.3.55. Changes in MySQL Connector/J 1.1i (24 March 1999)
D.3.56. Changes in MySQL Connector/J 1.1h (08 March 1999)
D.3.57. Changes in MySQL Connector/J 1.1g (19 February 1999)
D.3.58. Changes in MySQL Connector/J 1.1f (31 December 1998)
D.3.59. Changes in MySQL Connector/J 1.1b (03 November 1998)
D.3.60. Changes in MySQL Connector/J 1.1 (02 September 1998)
D.3.61. Changes in MySQL Connector/J 1.0 (24 August 1998)
D.3.62. Changes in MySQL Connector/J 0.9d (04 August 1998)
D.3.63. Changes in MySQL Connector/J 0.9 (28 July 1998)
D.3.64. Changes in MySQL Connector/J 0.8 (06 July 1998)
D.3.65. Changes in MySQL Connector/J 0.7 (01 July 1998)
D.3.66. Changes in MySQL Connector/J 0.6 (21 May 1998)
E. Anmerkungen zur Portierung auf andere Systeme
E.1. Einen MySQL-Server debuggen
E.1.1. MySQL zum Debuggen kompilieren
E.1.2. Trace-Dateien erzeugen
E.1.3. mysqld unter gdb debuggen
E.1.4. Einen Stack-Trace benutzen
E.1.5. Logdateien benutzen, um Ursachen für Fehler in mysqld zu finden
E.1.6. Erzeugen eines Testfalls, wenn Sie Tabellenbeschädigung feststellen
E.2. Einen MySQL-Client debuggen
E.3. Das DBUG-Paket
E.4. Anmerkungen zu RTS-Thread
E.5. Unterschiede zwischen verschiedenen Thread-Paketen
F. Umgebungsvariablen
G. Beschreibung der MySQL-Syntax für reguläre Ausdrücke
H. Beschränkungen in MySQL
H.1. Beschränkungen von Joins
I. Feature-Beschränkungen
I.1. Beschränkungen bei gespeicherten Routinen und Triggern
I.2. Beschränkungen von serverseitigen Cursorn
I.3. Beschränkungen von Unterabfragen
I.4. Beschränkungen bei Views
I.5. Beschränkungen bei XA-Transaktionen
J. GNU General Public License
K. MySQL FLOSS License Exception
Stichwortverzeichnis

Abbildungsverzeichnis

15.1. MySQL-Architektur

Beispiele

25.1. Eine Verbindung vom DriverManager erhalten
25.2. Mit java.sql.Statement eine SELECT-Anfrage ausführen
25.3. Gespeicherte Prozeduren
25.4. Using Connection.prepareCall()
25.5. Registrierung von Ausgabeparametern
25.6. Einstellung von CallableStatement-Eingabeparametern
25.7. Abruf von Ergebnissen und Ausgabeparameterwerten
25.8. AUTO_INCREMENT-Spaltenwerte mit Statement.getGeneratedKeys() abrufen
25.9. Abruf von AUTO_INCREMENT-Spaltenwerten mit SELECT LAST_INSERT_ID()
25.10. Retrieving AUTO_INCREMENT column values in Updatable ResultSets
25.11. Verwendung eines Verbindungspools mit einem J2EE-Anwendungsserver
25.12. Beispiel einer Transaktion mit Retry-Logik

Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.