Index by neurychlil dotaz, protože pro textové sloupce indexy fungují tak, že indexují N znaků počínaje zleva. Když uděláte LIKE '%text%', nemůže použít index, protože před textem může být proměnný počet znaků.
To, co byste měli udělat, je nepoužívat takový dotaz vůbec. Místo toho byste měli použít něco jako FTS (Full Text Search), které MySQL podporuje pro tabulky MyISAM. Je také docela snadné vytvořit si takový systém indexování sami pro tabulky, které nejsou MyISAM, stačí vám samostatná indexová tabulka, kde budete ukládat slova a jejich relevantní ID ve skutečné tabulce.
Aktualizovat
Fulltextové vyhledávání dostupné pro tabulky InnoDB s MySQL 5.6+.