本篇文章给大家分享的是有关SQL Server性能调优方法论及常用工具有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

说起“调优”,可能会让很多技术人员心头激情澎湃,也可能会让很多人感觉苦恼。SQL Server的性能调优,是个很宽广的话题。简要介绍一个SQL Server性能调优方法论,并为大家介绍几款常用工具。

首先看 Discover ,发现问题

是否已经简洁的描述了整个问题?

用户当前的基线在哪里?

用户期望的是什么?

并不是所以的问题都可以解决的

再看Explore,探究原因

取得证据

SqlProfiler跟踪 /Sql Trace

DMV 和 DMF

ShowPlan执行计划输出

各种系统的性能计数器

sqlserver特有的性能计数器

检查最明显的问题(探究问题先不要深入)

Track down 提供可能的解决方式

***阶段,建立证明假设的计划

第二阶段,建立解决问题的计划

执行最有可能的解决方案

***阶段,执行测试计划来证明你的假设

第二阶段,执行解决问题的方案

Check,确认成功与否

***阶段

你的计划证明了你的假设,还是推翻了他?

第二阶段

你的计划是否改变了现象?

瓶颈是否转移了?

解决方案是否符合你原先的目标?

记住:该过程通常是递归反复执行的

Tie up 完成剩余工作,收尾

性能调优是否达会有无法预计的边际效应?

所做的修改是否真正解决了问题,会不会短时间又碰到相同问题?

还需要做哪些跟踪的工作?

上面说了那么方法论,虽然很枯燥,但是还是有指导意义的。下面来点实际的知识。

瓶颈分析

瓶颈的定义

瓶颈=需求达到的速率>实际处理量

流程:

决定是卡在哪一个点上

决定在队列中等待的状况

减少输入(需求达到的速率)或是增加同时的处理量

决定收益

决定成本

常见瓶颈的监视任务

监视内存占用

监视线程和CPU使用

监视硬盘IO

监视低性能查询

监视存储过程、sql和用户活动

监视当前锁定和用户互动

建立性能调优的计划

性能调优是反复的过程,一而再,再而三的循环,一次又一次趋近的修正,要利用文字记录以说明

理出头绪,突显问题并证明

系统的逼近目标

有共识,知道彼此谈论的标地

能够汇总比较

当系统出现的多个瓶颈,找出最关键的,成本***的先执行调优

执行性能调优的计划时,要确定对线上生产环境的影响

方法论--缩小

性能调优中常用的工作

windows事件查看器

windows系统监视器

SSMS中的当前活动窗口

T-SQL工具

Sql Profiler

查询分析器

数据库引擎优化顾问

windows事件查看器,主要是查看以下的事件日志

windows应用程序日志

windows系统日志

windows安全日志

windows系统监视器能够跟踪:

sql server I/O

sql server 内存

sql server用户

sql server 锁

复制活动

SSMS中的活动监视器:

活动用户任务

资源等待

数据文件I/O

耗费大量资源的查询

T-SQL工具:

系统存储过程

全局变量

T-SQL语句

DBCC

跟踪标记

DMF/DMF

Sql Profiler,跟踪并捕获sqlserver事件

选择需要跟踪的事件

选择跟踪模版

选择需要捕获的数据

有意义对数据进行分类

查询分析器

显示查询执行计划

显示服务器跟踪

显示服务器端统计信息

显示客户端统计信息

数据库引擎优化顾问

分析瓶颈

给出建议sql语句(索引和统计信息)

以上就是SQL Server性能调优方法论及常用工具有哪些,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。