Opa bom dia rodrigo.
Cara, voce deve usar um indice composto, quando basicamente ele for necessario.
Se voce tem uma query por exemplo
SELECT ...
FROM TABELA
WHERE COLUNA1 = 'ALGUMA COISA
AND COLUNA2 = 'OUTRA COISA'
AND COLUNA3 = 'MAIS OUTRA COISINHA'
Voce com certeza tera beneficios em um indice criado nas colunas COLUNA1, COLUNA2, COLUNA3.
No SQL Server existe a opção INCLUDE, onde voce consegue cobrir tambem as colunas que estao no SELECT, dentro do indice. No MySQL não existe essa função, entao voce poderia coloca-los tambem dentro do indice, colocando por exemplo COLUNA1, COLUNA2, COLUNA3, coluna_que_estaria_no_select1,oluna_que_estaria_no_select1 e assim vai.
Outra coisa é, se voce utilizar
SELECT * FROM...
O banco de dados pode, ou nao, utilizar seu indice. Ja que o * significa ME TRAGA TUDO.
para FORÇAR o uso de um indice, voce coloca ele no FROM do seu select, mas eu nunca precisei utilizar coisa do tipo, ja que se o seu banco tem as estatisticas bem tratadas, o banco automaticamente escolherá o melhor indice para sua query:
SELECT C1, C1, C1, FROM minhaTabela FORCE INDEX (IX_ID_nome_status)
aqui caso voce tenha um indice chamado IX_ID_nome_status, ele sera utilizado.