optymalizuj tabele do wyszukiwania za pomocą klauzuli LIKE w MySQL

Buduję funkcję wyszukiwania dla części wiadomości w mojej witrynie i mam bazę wiadomości z nieco ponad 9.000.000 wierszy i indeks na stroniesender, subject, imessage pola. Miałem nadzieję użyć klauzuli mysql LIKE w moim zapytaniu, na przykład (ex)

WYBIERZsender, subject, message ZMessages GDZIEmessage LIKE '% EXAMPLE_QUERY%';

odzyskać wyniki. niestety, MySQL nie używa indeksów, gdy obecny jest wiodący symbol wieloznaczny, i jest to konieczne, aby zapytanie wyszukiwania mogło pojawić się w dowolnym miejscu wiadomości (tak działają symbole wieloznaczne, nie?). Zapytania sąbardzo bardzo wolno nie mogę też używać indeksu pełnotekstowego z powodu irytującej reguły 50% (po prostu nie mogę sobie pozwolić na tak duże wykluczenie). Czy mimo to (lub nawet jakakolwiek alternatywa dla tego) optymalizować kwerendę za pomocą takich i dwóch symboli wieloznacznych? Każda pomoc jest doceniana.

questionAnswers(4)

yourAnswerToTheQuestion