SQL Server 数据库优化剖析

王朝学院·作者佚名  2016-05-25
窄屏简体版  字體: 小  |  中  |  大  |  超大  

SQL Server 数据库优化剖析一、SQL PRofiler事件类 Stored Procedures\RPC:Completed TSQL\SQL:BatchCompleted

事件关键字段 EventSequence、EventClass、SPID、DatabaseName、Error、StartTime、TextData、 HostName、ClientProcessID、applicationName、 CPU、Reads、Writes、Duration、RowCounts

1、跟踪慢SQL

2、跟踪SQL执行错误

3、调试中找到SQL以特殊字符作为筛选条件

4、T-SQL查询trace表

a、设置抓取的时候段

b、保持成文件 然后用下面语句查询文件

SELECT EventSequence,SPID,RequestID,DatabaseId,DatabaseName ,LoginName,StartTime,EndTime, TextData,Error ,Duration/1000 AS Duration,Reads,CPU,Writes,RowCounts ,HostName,ClientProcessID,ApplicationName INTO bak.dbo.traceFROM ::fn_trace_gettable('C:\trace\DB50 20150623.trc', default)

二、表存储结构 1、页 结构

2 区结构

3 文件存储

4 、基表

5、堆表

7、聚集索引

8、 普通索引

三、索引优化1、选择性高唯一性高的字段放最前面

2、覆盖索引Select、Where、Orderby字段都在索引中 或者 INCLUDE中 这样就会走到索引

3、控制索引数量,窄索引

此图索引作用不大

4、改善SQL语句a、SQL尽量简单

b、参数化SARG的定义 列名 操作符 <常数或变量> Name=’张三’and价格>5000

c、非SRAG name like ‘%张’ Name=’张三’and价格>5000 NOT、!=、<>、!<、!>、NOT EXISTS、NOT IN、NOT LIKE

四、执行计划--显示统计信息SET STATISTICS IO ON SET STATISTICS TIME ON SELECT * FROM dbo.FreezeUserMoney

开启执行重点看下面几个地方

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航