Tom-1986: MySQL - Indizes richtig setzen

Beitrag lesen

Hallo zusammen,

eine Frage zum "richtigen setzen" von Indizes in MySQL (Version 5.x) bei einer Tabelle mit größeren Datenmengen, welche für Suchen benötigt wird.

Es liegt eine Tabelle mit insgesamt 12 für eine Suche relevanten Spalten (Integer + Varchar) vor, die Tabelle hat insgesamt 20 Spalten. Der PK (autoincrement) ist für die Suche nicht relevant.

Die 12 Spalten beinhalten Informationen wie Beginn und Ende einer Veranstaltung, PLZ, Ort und Land usw..

Die Suche ist so aufgebaut, daß der Nutzer nicht alle Suchkriterien angeben muss. Es können also sowohl sehr genaue Suchabfragen entstehen, die über alle 12 Spalten gehen, als aber auch Abfragen, die sich lediglich auf ein oder zwei Spalten beziehen.

Ist es nun sinnvoller

a) einen Index über alle 12 Spalten zu setzen, die für die Suche in Frage kommen

b) für jede Spalte einen eigenen Index zu erzeugen

c) die Indizes "logisch" zu gruppieren (z.B. PLZ, Ort und Land in einen Index, Beginn und Ende in Index usw.)

--

Zwar habe ich hier im Forum einige ähnliche Fragen gefunden und auch Google hält so einige Ergebnisse bereit, doch ich würde mich sehr freuen, wenn Ihr mich in diesem Punkt ein wenig unterstützen könntet.

Vielen Dank vorab!

Gruß,
Tom