瓶颈分析
瓶颈的定义
瓶颈=需求达到的速率>实际处理量
流程:
决定是卡在哪一个点上 决定在队列中等待的状况 减少输入(需求达到的速率)或是增加同时的处理量 决定收益 决定成本常见瓶颈的监视任务
监视内存占用 监视线程和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/DMFSql Profiler,跟踪并捕获sqlserver事件
选择需要跟踪的事件 选择跟踪模版 选择需要捕获的数据 有意义对数据进行分类查询分析器
显示查询执行计划 显示服务器跟踪 显示服务器端统计信息 显示客户端统计信息数据库引擎优化顾问
分析瓶颈 给出建议sql语句(索引和统计信息)博文出处:http://blog.csdn.net/dinglang_2009/article/details/46480859