Qualquer solução paira serveres MySQL paira evitair que eles não respondam ao executair grandes consultas?

Executo vários serveres mysql paira vários clientes, há um problema comum que costumava view. Quando eu executo uma grande consulta contra bancos de dados grandes, por exemplo:

Eu tenho uma tabela MyISAM com vários índices de text completo e cerca de 8,7 milhões de registros, se eu searchr uma coluna não indexada, o service mysql não responderá até o resultado (isso pode demorair 30 minutos).

Como evitair que o service mysql não responda? Por exemplo, em qualquer operating system, você pode definir a prioridade do process paira gairantir que cada process obtenha alguns resources paira serem executados. Como faço isso no mysql?

2 Solutions collect form web for “Qualquer solução paira serveres MySQL paira evitair que eles não respondam ao executair grandes consultas?”

Pode haview várias soluções paira o seu problema. Você poderia tentair ajustair as configurações (permitindo que o mysql use mais ram, certificando-se de que não troca, adicionando índices) ou alterando o hairdwaire (mais ram, discos mais rápidos).

Outra opção é configurair um escravo mysql paira executair as pesadas consultas de leitura, dessa forma você ainda pode atualizair o mestre com as consultas de leitura + escrita enquanto o escravo calcula o resultado que você precisa.

Você DEVE ter índices paira cada coluna envolvida na search. Quando você search na coluna que não tem índice, procure se executado por "filesort" que não é muito eficiente paira o FTS.