MySQL查询卡在队列中成为瓶颈

MySQL查询卡在队列中成为瓶颈,mysql,my.cnf,Mysql,My.cnf,最近,有时我无法打开我的网站 我正在使用VPS进行托管 当我做我的上衣 它告诉我: User Host/IP DB Time Cmd Query or State --

最近,有时我无法打开我的网站

我正在使用VPS进行托管

当我做我的上衣

它告诉我:

       User         Host/IP         DB      Time    Cmd Query or State                                                                                                                             
      --      ----         -------         --      ----    --- ----------                                                                                   
   12512   xxx       localhost xxx        39  Query SELECT * FROM user WHERE no = '12341'                                                                                                      
   12513   xxx       localhost xxx        39  Query SELECT name FROM user WHERE no = '2488'                                                                                                    
   12511   xxx       localhost xxx        40  Query UPDATE `user` SET `exp` = exp+6, `vright` = vright+1, `correct` = correct+1 WHERE `name` = 'Amethys'                                       
   12465   xxx       localhost xxx        48  Query SELECT * FROM user WHERE name = 'pinoysamurai'                                                                                             
   12483   xxx       localhost xxx        48  Query SELECT * FROM user WHERE name = 'pinoysamurai'                                                                                             
   12501   xxx       localhost xxx        52  Query UPDATE `user` SET `exp` = exp+7, `vright` = vright+1, `correct` = correct+1 WHERE `name` = 'yuya_sama'                                     
   12422   xxx       localhost xxx        57  Query SELECT uo.name, ( SELECT COUNT(*) FROM user ui WHERE (ui.kright, ui.no) >= (uo.kright, uo.no) ) AS rank FROM user uo WHERE name = 0  
最底层的查询需要100多秒才能完成。在它完成之前,它后面的队列也被卡住了。您可以在mytop输出中看到它

这有什么问题? 我很沮丧

我正在使用itk mpm 这是我的my.cnf文件:我有512-1GB的RAM

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
old_passwords=1
interactive_timeout=27
wait_timeout=10
connect_timeout=10
skip-locking
skip-innodb
skip-bdb
max_connections=77
table_cache=2M
thread_cache_size=2M
query_cache_type=1
query_cache_limit=1M
query_cache_size=64M
key_buffer_size=64M
read_rnd_buffer_size=2M
read_buffer_size=2M
sort_buffer_size=2M
join_buffer_size=2M
thread_cache_size=128
thread_concurrency=12
thread_stack =256K
tmp_table_size=32M

谢谢,

也许这有助于在kright上添加一个组合索引,不,所以连接速度更快?但我不确定MySQL是否会尊重这一点。

底部查询的name=0?。。。你能提供用户表的结构吗?看起来整数也被引用了。什么是克里特柱?以前没有见过var1,var2>=other1,other2语法。。。目的何在?