Podrías usar expresiones regulares REGEXP. Existen también en MySQL y para la búsqueda de una palabra y su plural (añadido de una o dos letras, sin contar excepciones y cambios de acento) y el añadido de un prefijo con guión, lo podrías conseguir sin mucha dificultad, pero antes deberías contemplar todas las posibilidades sobre las que trabajas. Echa un vistazo aquí.
http://dev.mysql.com/doc/refman/5.0/es/regexp.html
Ariel, piensa que estas consultas devuelven 1 cuando se cumple la condición, y 0 cuando no.
Por ejemplo, para encontrar vitamina, vitaminas, pro-vitamina, pro-vitaminas, podrías usar esto:
SELECT * FROM tabla WHERE termino REGEXP '[[:<:]]vitamina[s|es]*[[:>:]]'= 1
Las expresiones regulares se usan también en PHP.