Haverá vários threads do mysql, não processos. Algumas versões de "Top" e "ps" mostram encadeamentos como se fossem processos separados.
O MySQL pode ser ajustado o quanto você quiser. A melhor maneira de ajustá-lo é usar apenas um único mecanismo para todas as suas tabelas - se você estiver usando o InnoDB, use SOMENTE o InnoDB.
Em seguida, ajuste os buffers como achar melhor - os principais são o cache de chaves MyISAM e o buffer pool innodb. Se você estiver usando apenas MyISAM, desative o mecanismo innodb completamente com skip-innodb no my.cnf.
No que diz respeito ao Apache, execute o menor número de MaxClients que você puder; desative o keepalive ou defina o tempo limite muito baixo - as conexões keepalive continuarão atrapalhando um processo do Apache (pesado).
É claro que fazer qualquer uma dessas coisas pode ser prejudicial para o desempenho, então teste-a em um sistema que não seja de produção se você se preocupa com as regressões de desempenho.
Pode ser mais econômico apenas comprar mais memória RAM do que gastar seu tempo ajustando para uma caixa tão pequena. No nosso trabalho, cada desenvolvedor tem uma blade com 16G de ram apenas para fins de teste. Isso é considerado razoável e não muito caro.