一朋友服务器CPU100%,摄影网站理论上来,同时在线不会过百,数据库的连接数更不可能2000,MySQL我给的2000的链接数,居然跑满了,而且服务器也特别的卡,看来需要入手检查了。
1.第一步,万能的重启.当然可能重启了一会儿还是继续高上去
2.检查连接数和慢查询语句.开始分析了.
我们的原则是,重启能解决的,绝对不开client
cpu100%通常情况下就是有慢sql造成的,这里的慢sql包括全表扫描,扫描数据量过大,内存排序,磁盘排序,锁争用等待等…
一般表现现象sql执行状态为:Sending data,Copying to tmp table,Copying to tmp table on disk,Sorting result,locked
通过show processlist查看当前正在执行的sql,当执行完show processlist后出现大量的语句,通常其状态出现Sending data,Copying to tmp table,Copying to tmp table on disk,Sorting result, Using filesort都是sql有性能问题
可以用explain查看sql执行效率,分析索引
解决方案整理
1.Sending data表示:sql正在从表中查询数据,如果查询条件没有适当的索引,则会导致sql执行时间过长;
2.Copying to tmp table on disk:出现这种状态,通常情况下是由于临时结果集太大,超过了数据库规定的临时内存大小,需要拷贝临时结果集到磁盘上,这个时候需要用户对sql进行优化;
3.Sorting result, Using filesort:出现这种状态,表示sql正在执行排序操作,排序操作都会引起较多的cpu消耗,通常的优化方法会添加适当的索引来消除排序,或者缩小排序的结果集;
4.出现sending data的情况:这种一般就是SQL不规范,优化SQL吧.
5.检查网站是不是有被CC攻击之类的
关于我们:华籁云(www.hualaiyun.cn)隶属南京华籁云信息技术有限公司,是一家专注于网站及服务器综合业务提供商。服务包括:南京网站建设、南京域名注册、南京虚拟主机、南京服务器租用、南京服务器维护、南京网站维护,公司配有客服、技术、开发等部门,拥有数名安全专家,7*24为用户提供技术服务。
欢迎联系华籁云(HUALAIYUN)我们将竭诚为您服务!
接待地址:南京市文景路61号垠坤创芯汇(各区均有办公接待处) 贴心服务:一个电话免费预约来访或者上门洽谈