Cambia tu my.cnf por este, no incluye todo lo que se puede hacer pero nos dará un punto de partida
Código:
[mysqld]
socket=/var/lib/mysql/mysql.sock
local-infile
old-passwords
safe-show-database
low-priority-updates
symbolic-links
#log-error=/var/log/mysql/error.log
#log-slow-queries=/var/log/mysql/slowquery.log
long_query_time=5
query_cache_type = 1
connect_timeout=10
max_connections=1000
max_user_connections=1000
max_connect_errors=20
max_allowed_packet=8M
key_buffer=512M
myisam_sort_buffer_size=64M
join_buffer=2M
record_buffer=8M
sort_buffer=2M
table_cache=22000
thread_cache_size=256
wait_timeout=1800
tmp_table_size=64M
query_cache_size=512M
query_cache_limit=16M
open_files_limit=60000
[safe_mysqld]
open_files_limit=60000
[mysqldump]
socket=/var/lib/mysql/mysql.sock
max_allowed_packet=16M
add-drop-table
extended-insert
quick
[myisamchk]
key_buffer=32M
sort_buffer=32M
read_buffer=16M
write_buffer=16M
[mysql]
socket=/var/lib/mysql/mysql.sock
disable-auto-rehash
connect_timeout=10
local-infile
quick
#unbuffered
#silent
[client]
port=3306
socket=/var/lib/mysql/mysql.sock
esto debe comenzar a bajar la carga MySQL, para obtener más información acerca del uso actual que tiene tu servidor MySQL te recomiendo un excelente script
http://hackmysql.com/mysqlreport si puedes instálalo antes de cambiar algo y lo corres para ver el performace actual.
Luego de ver los resultados haremos algunos ajustes, considera instalar eaccelerator.
P.D. Esto lo hago a modo de colaboración y no me hago responsable por cualquier efecto indeseado que alguna modificación pueda ocasionar, se debe realizar un backup antes de modificar cualquier archivo.