Índices do MySQL - quantos são suficientes?
Estou tentando ajustar meu servidor MySQL para verificar minhas configurações, analisar o log de consultas lentas e simplificar minhas consultas, se possível.
Às vezes é o suficiente se estou indexando corretamente, às vezes não. Eu li em algum lugar (por favor corrija-me se isso é estupidez) que mais índices do que eu preciso fazem o mesmo efeito, como se eu não tivesse nenhum índice.
Quantos índices são suficientes? Você pode dizer que depende de centenas de fatores, mas estou curioso sobre como posso limpar meumysql-slow.log
o suficiente para reduzir a carga do servidor.
Além disso, eu vi algumas entradas de registro "interessantes" como esta:
# Query_time: 0 Lock_time: 0 Rows_sent: 22 Rows_examined: 44
SELECT * FROM `categories` ORDER BY `orderid` ASC;
A tabela em questão contém exatamente 22 linhas, índice definido emorderid
. Por que esta consulta aparece no registro depois de tudo? Por que examinar 44 linhas se contiver somente 22?