SQLSERVER 数据库性能的基本

  在系统正式上线之前,DBA一般都要测试一下服务器的性能

正文

随着市场份额的SQL Server的发展随着时间的推移,有越来越多的对SQL服务器性能调优的需求。

有不同的团队和个人采用各种各样的方法提高SQLSERVER服务器的性能,

而且我认为这些记录SQLSERVER troubleshooting 的基本步骤和提高各种程序性能的文档对SQLSERVER社区是有意义的

 

磁盘

为了SQLSERVER能有效运行,监控和优化SQLSERVER的磁盘子系统是一个重要的方面

我们需要非常明确磁盘的性能需求

Avg. Disk Sec/Read 这个计数器是指每秒从磁盘读取数据的平均值

下面的列表显示这个计数器值的范围,并指出这个计数器所处范围的意思

少于 10 ms - 非常好
在 10 - 20 ms 之间- 还可以
在 20 - 50 ms 之间- 慢,需要关注
大于 50 ms –严重的 I/O 瓶颈

 

磁盘性能测试工具

(1)CrystalDiskMark

(2)HDTUNE 硬盘检测修复工具 

(3)ATTO Disk Benchmark 

 

 

 

辨别I/O瓶颈

PhysicalDisk Object:Avg. Disk Queue:所选物理磁盘在取样期间被排队的磁盘读写请求平均值

如果你的磁盘队列长度经常超出SQLSERVER磁盘使用峰值的2倍,那意味着可能有I/O瓶颈了

 

Avg. Disk Sec/Read:每秒从磁盘读取数据的平均值 

Avg. Disk Sec/Write:写入数据到磁盘的平均时间,Avg. Disk Sec/Read参考指标

Physical Disk:%Disk Time磁盘时间是所选磁盘驱动器繁忙处理读写请求时所花时间的百分比,一个指标就是如果这个值大于50%,那么就存在I/O瓶颈

Avg. Disk Reads/Sec:在磁盘上的读操作的比率。确保这个数字小于磁盘吞吐量的85%。当这个值超过85%磁盘访问时间会以指数式增长

Avg. Disk Writes/Sec c:在磁盘上的写操作的比率。确保这个数字小于磁盘吞吐量的85%。当这个值超过85%磁盘访问时间会以指数式增长

 

对于更多的信息,可以参考“如何创建性能计数器集”:http://technet.microsoft.com/en-us/library/cc722148.aspx

 

磁盘驱动器的位置

为了不同的目的,你需要使用不同的驱动器来存放下面的东西
独立的磁盘延时需求:
数据库大于15ms

事务日志大于2ms

Tempdb数据库大于2ms

 

磁盘速度的优先级

意思是说,Tempdb放在单独的物理磁盘,事务日志文件放在单独的物理磁盘,数据文件放在单独的物理磁盘,操作系统放在单独的物理磁盘,

数据库备份文件放在单独的物理磁盘

 

一般我们的做法:不可能有那么多单独的物理磁盘,一般就是做了磁盘阵列的存储

C盘放操作系统文件

D盘放数据文件和事务日志文件 和Tempdb数据文件和Tempdb日志文件

E盘放数据库备份文件

 

使用Performance Monitor (Perfmon.exe)来监控系统性能

为了捕获SQLSERVER特定的性能指标,你需要使用下面的计数器

Processor: % Processor Time  :平均应该低于75% (最好低于50%)   

System: Processor Queue Length:平均每个逻辑CPU应该低于2,例如在一个2逻辑CPU的机器上,他应该保持在4

Memory—Pages/sec:平均应该低于20(最好低于15%)

Memory—Available Bytes :可用内存应该保持在50MB以上

Physical Disk—% Disk Time:
Physical Disk—Avg. Disk Queue Length :每个磁盘平均应该低于2,例如:一个RAID5磁盘,这个指标应该平均低于10

Physical Disk—Avg. Disk Reads/sec :取决于CPU和磁盘的大小,应该低于相对应磁盘的吞吐量的85%

Network Interface—Bytes Total/sec :用于统计网络带宽方


SQL Server: Buffer Manager—Page Life Expectancy:用于统计内存,应该保持在300秒
SQL Server: 一般统计用户的连接数 来估计大概使用的内存
SQL Server: Databases— Transactions/sec :每秒的事务数
SQL Server: Databases—Data File(s) Size KB:用于统计数据库数据文件的大小,衡量磁盘子系统的性能
SQL Server: Databases—Percent Log :衡量磁盘子系统的性能

 

转载于:https://www.cnblogs.com/zping/p/8513117.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值