optimizar columns con LIKE DE mysql
(continúa...) Es lo que se denomina table scanning, porque no tiene otro modo de evaluar la expresión más que buscar desde el principio de cada campo, en cada registro.
Te imaginas que en esas condiciones, mientras más registros tenga la tabla, y más texto haya en ese campo, más lento será el proceso de búsqueda.
Una basura, en definitiva.
¿La solución?
Simple: Restringe al usuario la busqueda por inicio de la palabra o por final de la palabra, de modo que quede algo como
LIKE 'texobuscado%'
o bien
LIKE '%texobuscado'.
El resultado será mucho más rápido porque descartará sin mirar lo que no comience o termine con ese texto, y que serán la mayoría de los casos.