欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

sqlserver数据库优化解析(图文剖析)

程序员文章站 2023-11-25 15:47:40
下面通过图文并茂的方式展示如下: 一、sql profiler  事件类 stored procedures\rpc:completed tsql\sql:b...

下面通过图文并茂的方式展示如下:

一、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 sqlserver数据库优化解析(图文剖析) 

     2、跟踪sql执行错误 sqlserver数据库优化解析(图文剖析)sqlserver数据库优化解析(图文剖析)

      3、调试中找到sql 以特殊字符作为筛选条件 sqlserver数据库优化解析(图文剖析)  

       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、页 结构

sqlserver数据库优化解析(图文剖析)

2 区结构

sqlserver数据库优化解析(图文剖析)

3 文件存储

sqlserver数据库优化解析(图文剖析)

4 、基表

sqlserver数据库优化解析(图文剖析)

5、堆表

sqlserver数据库优化解析(图文剖析)

6、聚集索引

 sqlserver数据库优化解析(图文剖析)

7、 普通索引

sqlserver数据库优化解析(图文剖析) 

三、索引优化

1、选择性高唯一性高的字段放最前面

2、覆盖索引 select、where、orderby字段都在索引中 或者 include中 这样就会走到索引

3、控制索引数量,窄索引 sqlserver数据库优化解析(图文剖析) 此图索引作用不大

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

开启执行重点看下面几个地方 sqlserver数据库优化解析(图文剖析)

以上是针对优化sqlserver数据库全部内容,希望大家能够喜欢。