Not a very riveting answer, but I've found the official docs to give good background:
http://dev.mysql.com/doc/refman/5.0/en/mysql-indexes.html
A few things you could try (assuming you've already analysed the optimizer path with EXPLAIN
):
- Try running the query with
USE INDEX
(<your index name here>)
to see if
your index usage would actually
provide the performance you expect.
- Make sure the order of your columns
in any composite index reflects the
way you expect that index to be used
(sorry if that's a bit vague, but
MySql index usage can be a bit quirky
at times).