易截截图软件、单文件、免安装、纯绿色、仅160KB

最大程度降低 SQL Server 中的阻塞

http://technet.microsoft.com/zh-cn/magazine/2008.04.blocking.aspx
SQL Server
最大程度降低 SQL Server 中的阻塞
Cherié Warren
 
概览:
发生锁升级的原因
避免不必要的阻塞
优化查询
监视锁定对性能的影响
锁定对支持数据库的并发读写活动而言是必需的,但阻塞却会对系统性能产生负面影响,有时让人难以觉察。在本文中,我将介绍如何优化 SQL Server 2005 或 SQL Server 2008 数据库以最大程度降低
阻塞,以及如何监视系统以更好地了解锁定如何对性能产生影响。
锁定和升级
SQL Server® 根据受影响的记录数和系统中存在的并发活动来选择最合适的锁粒度。默认情况下,SQL Server 会选择尽可能小的锁粒度,如果它可以更高效地使用系统内存,则仅选择粗粒度锁。只有当锁升级会对总体系统性能带来好处时,SQL Server 才会升级锁。如图 1 所示,当特定扫描中锁的数量超过 5,000 或者系统用于锁的内存数超过可用容量时,将会开始升级:
Figure 1 促使锁升级的条件 (单击该图像获得较大视图)
当锁设置为 0 时,数据库引擎使用 24 % 的非地址窗口化扩展(非 AWE)内存
当锁设置非 0 时,数据库引擎使用 40 % 的非 AWE 内存
如果确实发生了升级,则始终会升级到表级锁。
避免不必要的阻塞
阻塞在任何锁粒度情况下都可能发生,但阻塞的显现程度却在升级后增加。锁升级可能是一个信号,说明您的应用程序在设计、编码或配置方面的效率不高。
遵循数据库设计基本原理(例如,使用采用窄键的标准化架构以及避免在事务性系统中执行大量数据操作)是避免发生阻塞的重要手段。如果未遵循这些原理(例如,将报告系统从事务性系统中分离出来,或在非工作时间处理数据馈送),则系统优化将会很困难。
索引编制可能是决定访问数据所需锁数量的关键因素。索引可以通过减少数据库引擎必须执行的内部查找次数来减少查询访问的记录数。例如,如果您从一个表的非索引列选择一行,则表中的每一行都需要被临时锁定,直到确定了所需的记录为止。但是,如果对该列编制了索引,则仅需要单个锁。
SQL Server 2005 和 SQL Server 2008 都包含动态管理视图(sys.dm_db_missing_index_group_stats、 sys.dm_db_missing_index_groups、sys.dm_db_missing_index_details),这些视图根据累计使用情况统计来显示那些将会得益于索引的表和列。
碎片也可能是一个隐含的性能问题,如果碎片过多,数据库引擎可能需要访问比采用其他


相关文档:

sql 查询慢的48个原因分析

还是一转帖,总结的不错,大家借鉴。
原网址:
http://database.ctocio.com.cn/222/9068222.shtml
1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)
  2、I/O吞吐量小,形成了瓶颈效应。
  3、没有创建计算列导致查询不优化。
  4、内存不足
  5、网络速度慢
  6、查询出 ......

SQL Enlight 1.5 破解 第二版

SQL Enlight 1.5 破解 第二版 收藏
  破解声明:我的破解仅用于研究,请勿用于商业用途,需要使用请购买正版软件。
可恶的UbitSoft,我的破解出来还没几天,他的程序就改变了验证逻辑,虽然我觉得SQL Enlight的功能不是非常强大,但是他的防破解功能倒是下了不少功夫,除了核心代码用vc++.net编写的native cod ......

sql 存储过程 判断异常(简单)

Create  PROCEDURE [dbo].[PR_addRoles]
@RolesID INT,
@Roles varchar (100),
@ID INT OUT
AS
BEGIN TRY
BEGIN TRAN
 INSERT FS_Roles (RolesID,Roles) VALUES (@RolesID,@Roles)
 COMMIT TRAN
 SET @ID=1
END TRY
BEGIN CATCH
 ROLLBACK TRAN
 SET @ID=0
 END CATCH
......

SQL查询语句复习题

新建学生-课程数据库的三个表:
学生表:Student(Sno,Sname,Ssex,Sage,Sdept) Sno为主码;
课程表:Course(Cno,Cname,Cpno,Credeit) Cno为主码;
学生选修表:SC(Sno,Cno,Grade) Sno,Cno,为主码;
Student
学号
Sno姓名
Sname性别
Ssex年龄
Sage所在系
Sdept
95001李勇男20CS
95002刘晨女19IS
95003王敏女18MA
95004 ......

SQL Server 2005 中的分区表和索引 [2]

分区的发展历史
分区的概念对 SQL Server 来说并不陌生。实际上,此产品的每个版本中都可以实现不同形式的分区。但是,由于没有为了帮助用户创建和维护分区架构而专门设计一些功能,因此分区一直是一个很繁琐的过程,没有得到充分的利用。而且,用户和开发人员对此架构存在误解(由于其数据库设计比较复杂),低估了它的优 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号