Hallo Alexander,
einfach so Indexe setzen, schadet mehr als es nützt. Daher solltest du dein Log durchgehen und schauen, welche Abfragen am meisten Zeit benötigen. Bei den Abfragen mit den längsten Abarbeitungszeiten schaust du dann auf die WHERE-Klausel und überprüfst, ob es zu dem entsprechenden Feld einen Index gibt.
Beispiel:
# Nehmen wir an, diese Abfrage ist extrem langsam.
SELECT a, b, c FROM t1 WHERE b = 3;
mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
Table: t1
Create Table: CREATE TABLE `t1` (
`a` int(11) NOT NULL AUTO_INCREMENT,
`b` int(11) DEFAULT NULL,
`c` varchar(25) DEFAULT NULL,
PRIMARY KEY (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
In diesem Fall würdest du auf t1.b einen Index setzen.
Viele Grüße,
Hakan
Hakan Küçükyılmaz, MariaDB
http://askmonty.org/