1000 FAQ, 500 Anleitungen und Lernvideos. Hier gibt es nur Lösungen!
MySQL: Abfragen optimieren
Grösse und Anzahl der Datenbanken sind unbegrenzt, aber Sie müssen Ihre Abfragen und Tabellen (samt Indizes) optimieren, damit sie nicht den Server überlasten, auf dem sich Ihre Datenbanken befinden, und dies vor allem dann, wenn die Datenbanken sehr gross sind.
Abfragen optimieren
Indizes dienen dazu, sehr schnell Ergebniszeilen mit einem bestimmten Wert zu finden. Fehlt ein Index, muss MySQL alle Zeilen nacheinander lesen und jedes Mal die notwendigen Vergleiche durchführen, um zu einem relevanten Ergebnis zu gelangen. Je grösser die Tabelle, desto ressourcenintensiver ist das Ganze. Besitzt die Tabelle jedoch einen Index für die verwendeten Spalten, kann MySQL die Zeilen in der Datei schnell finden, ohne die gesamte Tabelle durchsuchen zu müssen.
Mit dem Befehl EXPLAIN wird eine SQL-Anfrage geprüft; so wird ersichtlich, wie viele Zeilen (rows) bei der Ausführung der Abfrage durchsucht wurden. Sind es sehr viele, bietet sich die Verwendung eines Index an, um die Abfrage zu optimieren. Ein Index wird meistens in den Spalten eingefügt, die in der Klausel WHERE einer SQL-Abfrage verwendet werden.
Die Syntax zur Hinzufügung eines Index lautet:
ALTER TABLE tablename ADD INDEX indexname (column1, column2, ...);
Weitere Informationen / Verweise
http://dev.mysql.com/doc/refman/5.0/fr/mysql-indexes.htmlhttp://dev.mysql.com/doc/refman/5.0/fr/explain.html