Salve ragassuoli!

Sto tentando di costruire un motore di ricerca interno al mio database, una cosa semplice, deve cercare in una sola tabella.

Questa tabella contiene vari campi (ogni record è un articolo), ma l'unico campo in cui mi interessa cercare è il corpo dell'articolo.

Nel form si scrive la parola da cercare, e tramite una query di questo tipo il motore trova gli articoli che contengono la parola cercata:
Codice PHP:
SELECT FROM `articoliWHERE `articoloLIKE '%$query%' 
dove $query è ciò che ho scritto nel form.

Se cerco MENTE, viene fuori anche praticaMENTE, giornalMENTE... io invece voglio che trovi solo la PAROLA "MENTE", sia che abbia attorno a sè spazi o punteggiatura.

E poi vorrei anche che succedesse la stessa cosa se cercassi più parole.

Mi aiutate ad affinare il mio motorino di ricerca? Dai sono sicuro che qualcuno tra voi ha un buon algoritmo di ricerca già fatto.

L'ideale sarebbe avvicinarsi ai risultati di ricerca di Google, che sa usare gli operatori booleani e che riconosce gli errori di digitazione nel form (forse cercavi).
Sono anche già riuscito a evidenziare in grassetto nel testo la parola cercata.

L'ordinamento dei risultati non è un problema, perchè dovranno essere mostrati sempre e comunque prima gli articoli pubblicati più di recente (questo sono già riuscito a farlo).

Allora ragassuoli, chi vuol darmi una mano?