源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2021-08-15 07:31 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:sqlserver数据库优化解析(图文剖析)
下面通过图文并茂的方式展示如下: [b]一、SQL Profiler[/b]  事件类 Stored Procedures\RPC:Completed TSQL\SQL:BatchCompleted 事件关键字段 EventSequence、EventClass、SPID、DatabaseName、Error、StartTime、TextData、 HostName、ClientProcessID、ApplicationName、 CPU、Reads、Writes、Duration、RowCounts [b]       1、跟踪慢SQL [/b][img]http://files.jb51.net/file_images/article/201507/201507230944007.jpg[/img]  [b] [/b] [b]     2、跟踪SQL执行错误[/b] [img]http://files.jb51.net/file_images/article/201507/201507230944008.jpg[/img] [img]http://files.jb51.net/file_images/article/201507/201507230944009.jpg[/img] [b]      3、调试中找到SQL 以特殊字符作为筛选条件 [/b][img]http://files.jb51.net/file_images/article/201507/2015072309440010.jpg[/img]    [b]       4、T-SQL查询trace表 [/b] [b]a、设置抓取的时候段[/b] [b]b、保持成文件 然后用下面语句查询文件[/b]
[u]复制代码[/u] 代码如下:
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)
[b] 二、表存储结构[/b] [b] 1、页 结构[/b] [img]http://files.jb51.net/file_images/article/201507/2015072309440011.png[/img] [b]2 区结构[/b] [img]http://files.jb51.net/file_images/article/201507/2015072309440012.png[/img] [b]3 文件存储[/b] [img]http://files.jb51.net/file_images/article/201507/2015072309440013.png[/img] [b]4 、基表[/b] [img]http://files.jb51.net/file_images/article/201507/2015072309440014.png[/img] [b]5、堆表[/b] [img]http://files.jb51.net/file_images/article/201507/2015072309440015.png[/img] [b]6、聚集索引[/b]  [img]http://files.jb51.net/file_images/article/201507/2015072309440016.png[/img] [b]7、 普通索引[/b] [img]http://files.jb51.net/file_images/article/201507/2015072309440017.png[/img]   [b]三、索引优化[/b] 1、选择性高唯一性高的字段放最前面 2、覆盖索引 Select、Where、Orderby字段都在索引中 或者 INCLUDE中 这样就会走到索引 3、控制索引数量,窄索引 [img]http://files.jb51.net/file_images/article/201507/2015072309440018.png[/img] 此图索引作用不大 [b]4、改善SQL语句[/b] a、SQL尽量简单  b、参数化SARG的定义 列名 操作符 <常数 或 变量> Name='张三' and 价格>5000 c、非SRAG name like ‘%张' Name='张三' and 价格>5000 NOT、!=、<>、!<、!>、NOT EXISTS、NOT IN、NOT LIKE[b]四、执行计划[/b] --显示统计信息
[u]复制代码[/u] 代码如下:
SET STATISTICS IO ON SET STATISTICS TIME ON SELECT * FROM dbo.FreezeUserMoney
开启执行重点看下面几个地方 [img]http://files.jb51.net/file_images/article/201507/2015072309440019.jpg[/img] 以上是针对优化sqlserver数据库全部内容,希望大家能够喜欢。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部