`
sskhnje
  • 浏览: 15478 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
文章分类
社区版块
存档分类
最新评论

转:MySQL 负载过高解决一例

 
阅读更多

转:http://www.linuxidc.com/Linux/2013-03/81079.htm

 

发现问题 
top命令 查看服务器负载,发现 mysql竟然经常百分之九十几的cpu,引起Mysql 负载这么高的原因,估计主要应该是索引问题和某些变态SQL语句. 

排查思路 
1. 确定高负载的类型,top命令看负载高是CPU还是IO。 
2. 检查慢查询日志,如果前端上了新代码,可能是慢查询引起负载高。 
3. 检查硬件问题,是否磁盘故障问题造成的。 
4. 检查监控平台,对比此机器不同时间的负载。 

记录慢查询 
编辑Mysql 配置文件(my.cnf),在[mysqld]字段添加以下几行: 
log_slow_queries = /usr/local/mysql/var/slow_queries.log #慢查询日志路径 
long_query_time = 5 #记录SQL查询超过5s的语句 
log-queries-not-using-indexes = 1 #记录没有使用索引的sql 

查看慢查询日志

  1. tail /usr/local/mysql/var/slow_queries.log

# Time: 130308 7:56:39 
# User@Host: user[xxxx] @ xxxx[] 
# Query_time: 0.001118 Lock_time: 0.000301 Rows_sent: 26 Rows_examined: 52 
SET timestamp=1362711399; 
SELECT FROM com WHERE iSUSEd = 1 AND category_id IN ('1') ORDER BY vieworder ASC; 
4个参数 
Query_time: 0 Lock_time: 0 Rows_sent: 1 Rows_examined: 54 
分别意思为:查询时间 锁定时间 查询结果行数 扫描行数 
主要看扫描行数多的语句,然后去数据库加上对应的索引,再优化下变态的sql 语句。 

极端情况kill sql进程 
找出占用cpu时间过长的sql,在mysql 下执行如下命令:

  1. show processlist;

确定后一条sql处于Query状态,且Time时间过长,锁定它的ID,执行如下命令:

  1. kill QUERY 269815764;

注意:杀死 sql进程,可能导致数据丢失,所以执行前要衡量数据的重要性

分享到:
评论

相关推荐

    根据规则mysql创建分表

    在MySQL中,创建分表(Sharding)是一种处理大型数据库和提高性能的策略。分表通常是基于特定的规则将数据分散存储在多个表中。这种方法可以减少单个表的大小,提高查询效率,平衡负载,并增强系统的可伸缩性。 ...

    sql总结.doc

    例: DECLARE v_count NUMBER; BEGIN SELECT COUNT(*) INTO v_count from dept; --返回一个隐式游标 dbms_output.put_line('SQL%ROWCOUNT = '||SQL%COUNT); END; / 执行结果:SQL%ROWCOUNT = 1 (显式游标基本) ...

    韩顺平oracle学习笔记

    如果是对象权限,就加入with grant option 例:grant select on emp to xiaoming with grant option 如果是系统管理权限,system 给xiaoming权限时: 例:grant connect to xiaoming with admin option 如果scott把...

    400电话办理选号系统

    -spider.php ---蜘蛛文件,拒绝流氓蜘蛛对网站频繁抓取造成负载过高,默认屏蔽:有道蜘蛛 三、Memcache配置 memcache下载:http://www.qy400.cn/400dianhua/memcached-1.2.1-win32.zip 1、服务端解压缩至c:\...

    Lepus(天兔)是数据库企业监控系统,针对互联网企业开发的一款专业、强大的企业数据库监控管理系统.rar

    Lepus(天兔)数据库企业监控系统是一套由专业DBA针对互联网企业开发的一款专业、强大的企业数据库监控管理系统,企业通过Lepus可以对数据库的实时健康和各种性能指标进行全方位的监控。目前已经支持MySQL、Oracle、...

    数据库系统的核心.doc

    MySQL服务器支持 关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。 SQL Server SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,通过Web对...

    入门学习Linux常用必会60个命令实例详解doc/txt

    文件为doc版,可自行转成txt,在手机上看挺好的。 本资源来自网络,如有纰漏还请告知,如觉得还不错,请留言告知后来人,谢谢!!!!! 入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令 Linux提供...

    asp.net知识库

    SubmitOncePage:解决刷新页面造成的数据重复提交问题 SharpRewriter:javascript + xml技术利用#实现url重定向 采用XHTML和CSS设计可重用可换肤的WEB站点 asp.net的网址重定向方法的比较:面向搜索引擎友好 也谈 ...

    ecshop商城系统手册

    经过近两年的发展,ECShop网店系统无论在产品功能、稳定性、执行效率、负载能力、安全性和SEO支持(搜索引擎优化)等方面都居国内同类产品领先地位,成为国内最流行的购物系统之一。 服务: 灵活的模版机制 ...

    网软志成分类信息网站系统.net官方商业版

    以下数据库任选一种: Sql Server 2000(推荐)、Sql Server 2005或更高 Web服务器 IIS 5.0 及以上版本(推荐 IIS6.0) 网软志成分类信息网.NET综合风格正式版下载,能帮助用户建立一个像赶集网的专业分类信息网站门户...

Global site tag (gtag.js) - Google Analytics