Teil 3: MySQL 4 - Optimierung von Anfragen

SQL-Optimierung: Tabellen und Spalten anpassen

Mit ein paar einfachen Tricks können Sie die Größe Ihrer Datenbank reduzieren. Damit sparen Sie nicht nur Speicherplatz, auch Abfragen werden deutlich schneller ausgeführt.

Je kleiner eine Tabelle, desto höher ist der Anteil, der davon im Hauptspeicher gehalten werden kann. Finden sich die Daten nicht im Cache, so kann eine kleinere, optimierte Tabelle zumindest mit weniger Leseoperationen auf der Festplatte durchsucht werden. Daher ist es bei der Beschleunigung einer Datenbankanwendung immer sinnvoll, zunächst die zugehörigen Tabellen zu verkleinern.

Verwenden Sie keine langen Spalten, wenn kurze Spalten ausreichen

Wenn Sie CHAR-Spalten fester Länge verwenden, sollten Sie diese nicht unnötig lang machen. Wenn der längste Wert, den Sie in einer Spalte ablegen, 40 Zeichen umfasst, sollten Sie sie nicht als CHAR(255) deklarieren, sondern als CHAR(40). Wenn Sie MEDIUMINT statt BIGINT verwenden können, wird Ihre Tabelle kleiner (weniger Festplattenzugriffe), und die Werte können in Berechnungen schneller verarbeitet werden. Und wenn Sie die Spalten indizieren, dann ist der Leistungsgewinn bei kürzeren Spalten noch größer, denn der Index beschleunigt nicht nur die Anfragen, sondern kürzere Indexwerte werden auch schneller verarbeitet als lange.

MySQL4: Konfiguration, Administration und Entwicklung
MySQL4: Konfiguration, Administration und Entwicklung

Unsere neue Serie zur Optimierung von MySQL-Anfragen basiert auf Kapitel 4 “Optimierung von Anfragen“ des Standardwerks „MySQL 4 – Konfiguration, Administration und Entwicklung“ von Paul Dubois aus dem SAMS-Verlag. Weitere MySQL-Bücher und eBooks auch von Paul Dubois finden Sie in unserem Partner-Buchshop bei informit.de.

Artikelserie

Teil 1: SQL-Optimierung: Indizes richtig einsetzen

Teil 2: SQL-Optimierung: Indexnutzung in Queries manuell steuern

Teil 3: SQL-Optimierung: Tabellen und Spalten anpassen

Teil 4: SQL-Optimierung: Daten effizient in Tabellen einfügen

Teil 5: SQL-Optimierung: Manuelles Priorisieren und Sperren

Teil 6: SQL-Optimierung: Server richtig konfigurieren