来一发怎样使用SQL Profiler 功能剖析器
系统做了些什么,这需要时间去掌握,(背命令不是一件好的学习方法,相信我你一定会在你背完之前全部忘光),尽量掌握常用命令;mysql的sql功能剖析器次要用处是显现sql实行的全部过程当中各项资本的利用情形。剖析器能够更好的展现出不良SQL的功能成绩地点。
上面我们举例先容一下MySQLSQLProfiler的利用办法:
起首,开启MySQLSQLProfiler
mysql>SELECT@@profiling;
+-------------+
|@@profiling|
+-------------+
|0|
+-------------+
1rowinset(0.00sec)
mysql>SETprofiling=1;
QueryOK,0rowsaffected(0.00sec)
mysql>SELECT@@profiling;
+-------------+
|@@profiling|
+-------------+
|1|
+-------------+
1rowinset(0.00sec)默许情形下profiling的值为0暗示MySQLSQLProfiler处于OFF形态,开启SQL功能剖析器后profiling的值为1.
经由过程sql功能剖析器,我们来对照一下以下语句前后2次实行历程的差别,对我们懂得sql的具体实行历程长短常有匡助的。
mysql>createtablet_enginesselect*fromt_engines1;
QueryOK,57344rowsaffected(0.10sec)
Records:57344Duplicates:0Warnings:0
mysql>selectcount(*)fromt_engines;
+----------+
|count(*)|
+----------+
|57344|
+----------+
1rowinset(0.00sec)
mysql>selectcount(*)fromt_engines;
+----------+
|count(*)|
+----------+
|57344|
+----------+
1rowinset(0.00sec)
mysql>SHOWPROFILES;
+----------+------------+-------------------------------------------------+
|Query_ID|Duration|Query|
+----------+------------+-------------------------------------------------+
|26|0.10213775|createtablet_enginesselect*fromt_engines1|
|27|0.00032775|selectcount(*)fromt_engines|
|28|0.00003850|selectcount(*)fromt_engines|
+----------+------------+-------------------------------------------------+
15rowsinset(0.01sec)
mysql>SHOWPROFILEFORQUERY27;
+--------------------------------+------------+
|Status|Duration|
+--------------------------------+------------+
&n
12下一页
要明白学好linux不是一件一蹴而就的事,一定要能坚持使用它,特别是在使用初期。
来一发怎样使用SQL Profiler 功能剖析器
如果你让他去用linux搭建一个web服务器,做一个linux网关,他就什么都不会了.他们把时间都浪费在了版本的转换上了.bsp;|(initialization)|0.00000425|</P>|checkingquerycacheforquery|0.00004050|
|checkingpermissions|0.00001050|
|Openingtables|0.00018250|
|Systemlock|0.00000450|
|Tablelock|0.00001775|
|init|0.00001075|
|optimizing|0.00000550|
|executing|0.00002775|
|end|0.00000450|
|queryend|0.00000325|
|storingresultinquerycache|0.00000400|
|freeingitems|0.00000400|
|closingtables|0.00000500|
|loggingslowquery|0.00000300|
+--------------------------------+------------+
15rowsinset(0.00sec)
mysql>SHOWPROFILEFORQUERY28;
+-------------------------------------+------------+
|Status|Duration|
+-------------------------------------+------------+
|(initialization)|0.00000350|
|checkingquerycacheforquery|0.00000750|
|checkingprivilegesoncachedquery|0.00000500|
|checkingpermissions|0.00000525|
|sendingcachedresulttoclient|0.00001275|
|loggingslowquery|0.00000450|
+-------------------------------------+------------+
6rowsinset(0.00sec)mysql>SELECTsum(FORMAT(DURATION,6))ASDURATIONFROMINFORMATION_SCHEMA.PROFILINGWHEREQUERY_ID=27ORDERBYSEQ;
+----------+
|DURATION|
+----------+
|0.000326|
+----------+
1rowinset(0.00sec)mysql>SELECTsum(FORMAT(DURATION,6))ASDURATIONFROMINFORMATION_SCHEMA.PROFILINGWHEREQUERY_ID=28ORDERBYSEQ;
+----------+
|DURATION|
+----------+
|0.000039|
+----------+
1rowinset(0.00sec)
mysql>
从下面的例子中我们能够明晰的看出2次实行count语句的不同,SHOWPROFILEFORQUERY27展示的是第一次count统计的实行历程,包括了Openingtables、Tablelock等操纵。而SHOWPROFILEFORQUERY28展现了第二次count统计的实行历程,第二次count间接从查询缓存中前往count统计了局,经由过程对照2次统计的总实行工夫发明,缓存读的速率靠近物理读的10倍。经由过程利用SQL功能剖析器能够匡助我们对一些对照难以断定功能成绩的SQL举行诊断,找出成绩本源。
</p>上一页12
经常看到有人问用什么版本的linux好,其实只要你认真学习无论什么版本都挺好的。 对Linux命令熟悉后,你可以开始搭建一个小的Linux网络,这是最好的实践方法。Linux是网络的代名词,Linux网络服务功能非常强大,不论是邮件服务器、Web服务器、DNS服务器等都非常完善。 熟悉操作是日常学习Linux中的三大法宝。以下是作者学习Linux的一些个人经验,供参考: 期间我阅读了不少关于Linux的相关资料,其中也不乏一些有趣的小故事,这既丰富了我的课余生活,也让我加深了对一些术语的理解,比玩游戏强多了。? 得到到草率的回答或者根本得不到任何Linux答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。 我感觉linux的学习,学习编程~!~!就去学习C语言编程!! 让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?
页:
[1]