博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mysql 慢查询和慢查询日志分析
阅读量:5237 次
发布时间:2019-06-14

本文共 1024 字,大约阅读时间需要 3 分钟。

 

众所周知,大访问量的情况下,可添加节点或改变架构可有效的缓解数据库压力,不过一切的原点,都是从单台mysql开始的。下面总结一些使用过或者研究过的经验,从配置以及调节索引的方面入手,对mysql进行一些优化。

第一步应该做的就是排查问题,找出瓶颈,所以,先从日志入手
开启慢查询日志

mysql>show variables like “%slow%”; 查看慢查询配置,没有则在my.cnf中添加,如下log-slow-queries = /data/mysqldata/slowquery.log    #日志目录long_query_time = 1                          #记录下查询时间查过1秒log-queries-not-using-indexes     #表示记录下没有使用索引的查询

 

分析日志 – mysqldumpslow

分析日志,可用mysql提供的mysqldumpslow,使用很简单,参数可–help查看

# -s:排序方式。c , t , l , r 表示记录次数、时间、查询时间的多少、返回的记录数排序;#                             ac , at , al , ar 表示相应的倒叙;# -t:返回前面多少条的数据;# -g:包含什么,大小写不敏感的;mysqldumpslow -s r -t 10  /slowquery.log     #slow记录最多的10个语句mysqldumpslow -s t -t 10 -g "left join"  /slowquery.log     #按照时间排序前10中含有"left join"的

 

推荐用分析日志工具 – 

wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gztar zvxf mysqlsla-2.03.tar.gzcd mysqlsla-2.03perl Makefile.PLmakemake installmysqlsla /data/mysqldata/slow.log# mysqlsla会自动判断日志类型,为了方便可以建立一个配置文件“~/.mysqlsla”# 在文件里写上:top=100,这样会打印出前100条结果。

 

转载于:https://www.cnblogs.com/zengda/p/4558542.html

你可能感兴趣的文章
以太坊合约的自动化编译详解一
查看>>
末学者笔记--apache编译安装及LAMP架构上线
查看>>
Html列表标签
查看>>
Java8新特性。
查看>>
面试1——数据库面试题总结
查看>>
[EMSE'17] A Correlation Study between Automated Program Repair and Test-Suite Metrics
查看>>
objective - C 阅读笔记(与c++的相似与不同之处) (续)
查看>>
线程概念
查看>>
《艺术人生》-王志文
查看>>
实验四 主存空间的分配和回收模拟
查看>>
Confluence 6 Confluence 安装目录
查看>>
用CSS控制表格的框格线
查看>>
ios多线程 -- 线程安全
查看>>
猜单词小游戏
查看>>
DAY3-Python学习笔记
查看>>
Longest Substring Without Repeating Characters
查看>>
C# 扫码枪
查看>>
sizeof 计算 struct 占字节数的方法总结
查看>>
深度学习 Deep Learning UFLDL 最新Tutorial 学习笔记 5:Softmax Regression
查看>>
我在国企当实习程序猿的日子
查看>>