访问mysql频繁超时,隔一阵子就堵塞一会儿。
用show processlist 看看正在执行的语句。表现如下:
1.有100多个语句在执行,查询语句集中在两个表A和B,大多数都是select语句,少量insert和update;
2.语句状态一半多是sending data状态,其余大多是sort 状态;
3.cpu很高;
过一会儿这些语句执行完,又恢复正常了。
刚开始怀疑表没有建索引,导致查询太慢,看一下,已经建好了索引,排除索引问题;
再看语句,sending data状态的语句是最多的,上网搜了一下,有些说是可能是query_cache太小,导致赌赛。
想了一下,应该不是这问题,在安装mysql时,四台主备mysql(正式环境主备两台,测试环境主备两台),都没有修改过这参数,其他三台是正常的,就这台不正常,应该是其他问题。