O mais provável é que isso seja devido a um gargalo na E / S. Estou supondo que você esteja usando um único disco rígido ou um espelho simples. Se esse for o caso, você não tem um subsistema de disco no local que forneça taxa de transferência suficiente para suportar consultas tão grandes sem interrupção para outras tarefas em execução no sistema.
Basicamente, a menos que você queira investir em mais alguns discos rígidos e um bom controlador RAID, você terá que conviver com isso. Leituras / gravações grandes geralmente são sempre vinculadas ao disco, não vinculadas à CPU em máquinas modernas.Editar: À luz dos comentários anteriores sobre o seu OP, não há muito o que fazer com um único disco rígido. A maioria dos servidores que lidam com grandes consultas SQL possui 6-8 discos rígidos. As melhores práticas determinam que você tenha pelo menos três conjuntos fisicamente separados de discos rígidos. Um é para o SO, Troca e aplicação, um segundo é para os bancos de dados e o terceiro é para os logs de transação. Isso evita que várias gravações de confirmações individuais ocorram no mesmo volume.
Basicamente, se você quer rodar o MySQL em um desktop ao invés de um servidor e fazer grandes consultas, não há nenhuma quantidade de ajuste que você possa fazer para aliviar esse gargalo.