Uma otimização é que no
exact
caso, você não precisa usar LIKE (você só deve usá-lo com o curinga - %). Outra coisa que você pode fazer para tornar as coisas mais rápidas é adicionar um ÍNDICE aos campos que você vai pesquisar.
Além disso, somente se você estiver usando o MyISSAM como seu mecanismo de armazenamento (para essa tabela), poderá usar a pesquisa de texto completo assim
SELECIONE * DE
normal
WHERE MATCH(título, corpo) AGAINST ('Queried_string') first_name LIKE '%S%'
OR last_name LIKE '%S%'
OR phone_number LIKE '%S%'
OR mobile_number LIKE '%S%'
OR email_address LIKE '%S%'
OR address LIKE '%S%'
OR organization LIKE '%S%'
OR other LIKE '%S%'
OR sector LIKE '%S%'
OR designation LIKE '%S%' )
parece estar trazendo muito pouco valor para todo o processo.
Espero que isto ajude.