Consulta consume el 99% de la cpu

guanchufri
28 de Octubre del 2004
Hola foro:
Os cuento el problema. Tengo una base de datos MySQL instalada en un Windows2000. Contra ella atacan una aplicación que corre en background, la cual inserta varios registros (lecturas) por segundo. La tabla que se va generando es a su vez procesada para obtener una tabla de resúmenes y estadística.

Otra aplicación web también se conecta a dicha base de datos para que los usuarios generen informes estadísticos a partir de las tablas de resumen.

El problema surge cuando solicitan ciertos informes que generan consultas pesadas que pueden tardar varios segundos. Durante el tiempo que MySQL está ejecutando las consultas el proceso mysqld.nt.exe ocupa el 99% de la cpu, dejando no operativos al resto de procesos durante los segundos que tarda en ejecutar la consulta. Esto se ha de resolver ya que dichos procesos no pueden quedarse tanto tiempo sin funcionar.

¿Como consigo que MySQL ejecute las consultas y a la vez el resto de procesos del sistema puedan trabajar sin que se vea reducido tanto su rendimiento?
¿Puedo priorizar la ejecución de las consultas?
¿Tengo que configurar de una manera especial el servidor?

Muchas gracias.