变相怪杰 发表于 2015-1-16 22:20:36

MSSQL教程之利用SQL Server Profiler

优化的SQL查询算法,有效地提高查询速度19.2.1懂得SQLServerProfiler
SQLServerProfiler是图形化及时监督工具,能匡助体系办理员监督数据库和服务器的举动,好比逝世锁的数目,致命的毛病,跟踪Transact-SQL语句和存储历程。能够把这些监督数据存进表或文件中,并在今后某一工夫从头显现这些事务来一步一步地举行剖析。
一般我们利用SQLServerProfiler仅监督某些拔出事务,这些事务次要有:

[*]登录毗连的失利、乐成或断开毗连;
[*]DELETE、INSERT、UPDATE命令;
[*]远程存储历程挪用(RPC)的形态;
[*]存储历程的入手下手或停止,和存储过程当中的每条语句;
[*]写进SQLServer毛病日记的毛病;
[*]翻开的游标;
[*]向数据库工具增加锁或开释锁。
我们之以是不监督过量的事务,缘故原由在于对事务举行监督常常增添体系的包袱,而且使跟踪文件很快增加成年夜容量文件,从而引发不用要的贫苦。

19.2.2创立跟踪
在SQLServer中可使用SQLServerProfiler创立跟踪,也能够利用跟踪创立导游或是扩大存储历程。在这里我们将先容怎样利用SQLServerProfiler来创立跟踪。
(1)启动SQLServerProfiler(与启动SQLServerEnterpriseManager一样),从File的下拉菜单当选择New,再选择Trace选项,此时翻开TraceProperties对话框,如9-2所示。
在该对话框中界说跟踪的称号、范例、运转跟踪的SQLServer和跟踪输入数据的存储体例。个中各选项的寄义为:

[*]Shared:暗示一切被同意登录到运转SQLServerProfiler服务器的用户都可使用该跟踪;
[*]Private:暗示只要以后创立者可使用该跟踪;
[*]Capturetofile:暗示将跟踪了局存储到文件中,可削减举行跟踪时的内存开支;
[*]Capturetotable:暗示将跟踪了局存储到表中,这极易引发较年夜的分外体系开支。

(2)选中Events标签页,如9-3所示该对话框用来断定将跟踪哪些事务。在AvailableEvents下的窗口当选摘要跟踪的事务,底部的方框内便显现出该事务的寄义,单击Add,增添到SelectedEvents事务中;

(3)选中DataColumns标签页,如9-4所示。在该对话框能够选择跟踪事务哪些数据列,一般选择那些我们对照体贴的列。

(4)选中Filters标签页,如9-5所示。

(5)单击“断定”按钮完成跟踪创立。

19.2.3检察、剖析跟踪
利用SQLServerProfiler能够检察跟踪中的事务数据,在跟踪中的每行代表一个事务,这些事务数据是由跟踪的属性决意的。能够把SQLServer数据拷贝到别的的使用程序中,如SQLServerQueryAnalyzer或IndexTuningWizard然后使用它们举行数据剖析,但一般我们利用SQLServerProfiler来举行跟踪剖析。
使用SQLServerProfiler既能够翻开扩大名为.trc的跟踪文件,也能够翻开扩大名为.log的日记文件,和一样平常的SQL剧本文件
由于跟踪信息一般保留在文件或表中,以是经由过程翻开表或文件就能够检察、剖析跟踪。
翻开跟踪的步骤为:
从File菜单当选择Open,再选择TraceFiles,弹出如9-6所示的对话框。
其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

若相依 发表于 2015-1-19 09:07:10

SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上.

活着的死人 发表于 2015-1-25 22:12:56

现在是在考虑:如果写到服务器端,我一下搞他个10个存储过程导过去,那久之服务器不就成垃圾箱了吗?即便优化了我的中间层.

莫相离 发表于 2015-2-4 08:50:06

无法深入到数据库系统层面去了解和探究

爱飞 发表于 2015-2-9 20:42:16

所以你总能得到相应的升级版本,来满足你的需求。

小妖女 发表于 2015-2-27 21:33:02

如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。

再见西城 发表于 2015-3-9 14:26:47

我个人认为就是孜孜不懈的学习

因胸联盟 发表于 2015-3-17 00:06:56

换言之,只有在不断的失败中尝试成功,而关于失败的总结却是很少的

只想知道 发表于 2015-3-23 07:45:44

一直以来个人感觉SQLServer的优化器要比Oracle的聪明。SQL2005的更是比2k聪明了不少。(有次作试验发现有的语句在200万级时还比50万级的相同语句要快show_text的一些提示没有找到解释。一直在奇怪。)
页: [1]
查看完整版本: MSSQL教程之利用SQL Server Profiler