mysql 慢查询分析
轉自花開的地方
mysql有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的,为了开启这个功能,要修改my.cnf或者在mysql启动
的时候加入一些参数。
如果在my.cnf里面修改,需增加如下几行
long_query_time = 1
log-slow-queries
=
log-queries-not-using-indexes
long_query_time
是指执行超过多久的sql会被log下来,这里是1秒。
log-slow-queries
设置把日志写在那里,可以为空,系统会给一个缺省的文件log-queries-not-using-indexes 就是纪录没使用索引的sql
分
析:
mysqldumpslow –help以下,主要用的是
-s ORDER what to sort by (t, at,
l, al, r, ar etc), ‘at’ is default
-t NUM just show the top n
queries
-g PATTERN grep: only consider stmts that include this
string
-s,是order的顺序,说明写的不够详细,俺用下来,包括看了代码,主要有
c,t,l,r和
ac,at,al,ar,分别是按照query次数,时间,lock的时间和返回的记录数来排序,前面加了a的时倒叙
-t,是top
n的意思,即为返回前面多少条的数据
-g,后边可以写一个正则匹配模式,大小写不敏感的
mysqldumpslow -s c
-t 20 host-slow.log
mysqldumpslow -s r -t 20 host-slow.log
上
述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。
mysqldumpslow -t 10 -s t -g
“left join” host-slow.log
这个是按照时间返回前10条里面含有左连接的sql语句。
Time:
060908 22:17:43
# Query_time: 12 Lock_time: 0 Rows_sent: 86345
Rows_examined: 580963
Q:这个是慢查的日志,都是些什么意思?
A:查询用了12妙,返回86345行,一共查
了580963行
例:mysqldumpslow -s c -t 20 <(tail -1000
slowquery.log ) | mail -v -s "slowquery" xx@xx.com
tail
最后1000条记中,按数量列出20条,并发邮件到xx@xx.com
相关文档:
一、表单提交乱码解决方法
表单中含有中文提交乱码,对于字母和数字则不会乱码,我选用的字符集utf-8(以下同)。
1、在apache-tomcat-6.0.18\webapps\examples\WEB-INF\classes\filters目录下找到文件SetCharacterEncodingFilter.java 和RequestDumperFilter.java文件,并将其复制到项目src ......
转自:http://www.yayu.org/look.php?id=113
1:在终端下:mysql -V。
以下是代码片段:
[shengting@login ~]$ mysql -V
mysql Ver 14.7 Distrib 4.1.10a, for redhat-linux-gnu (i686)
2:在mysql中:mysql> status;
以下是代码片段:
mysql> status;
--------------
mysql ......
Mysql中文乱码问题
之前被mysql中总是出现中文乱码搞得云里雾里,在网上也搜了些相关资料,可结果更让我觉得字符集的转换是相当复杂,甚至有了抵触心理,不过还好在最后搜到几篇经典的文章,经过研读总算明白过来!好文章,不敢独享,现将文章稍作整理与大家分享。
字符集基本概念:
http://home.phpchina.com/space.php ......
Twitter公司一位名叫Ryan King的工程师日前向博客MyNoSQL透露,公司计划从MySQL迁移到Cassandra数据库,因为后者具有更大的弹性、可扩展性和大量的社区网络开源开发人员。
我们有大量的数据,在数据巨大,增长率正在加速的情况下,我们需要一个系统,它可以更为自动化,并高度可靠、可用。Ryan K ......