Maison >base de données >tutoriel mysql > SQL SERVER 查询性能优化分析事务与锁(一)
一、使用工具观察与分析数据库中锁信息 此现象类似高速公路上有大量的车辆进入,而在收费口却只开了一个、二个。造成收费口的车辆拥堵,而后方却又有大量的车辆涌入,这时所有的车辆都会慢下来,驾驶员彼此再减速刹车互相等待,最后导致后方的车子会被迫停下
一、使用工具观察与分析数据库中锁信息
此现象类似高速公路上有大量的车辆进入,而在收费口却只开了一个、二个。造成收费口的车辆拥堵,而后方却又有大量的车辆涌入,这时所有的车辆都会慢下来,驾驶员彼此再减速刹车互相等待,最后导致后方的车子会被迫停下来,形成高速公路停车场。(就如第一次节假日高速公路免费通行那天,即2012年国庆高速公路大堵车的情形,高速公路成停车场)
如果数据库中在设计时,设计不当,设计有过热数据表时,也就是所有应用程序的访问行为都跟某张数据表有关,香港空间,美国服务器,甚至集中访问某些字段,这就像前述例子中的所有车辆都在同一地点(高速公路收费口)驶上高速公路。这时耗时与快速的两种访问行为混合在一起,就像大货车与小轿车一起争车道,很容易发生彼此锁定,形成死锁而动弹不得的情况。
第一步,使用SQL SERVER提供图形界面工具观察哪些进程被加锁。
图1
2) SQL SERVER 2005 的Microsoft SQL Server Management Studio提供图形界面工具中的信息不会自动更新。刷新“活动监视器”界面中的内容,需要手动使用鼠标点击上方工具栏上的“刷新”按钮。如下图2,是未点击“刷新”按钮之前的显示的内容,图3,是点击“刷新”按钮之后的,显示的内容。
图2
图3
2) SQL SERVER 2005中可以通过下图中的设置,美国服务器,设置成自动更新的时间周期。如下图4。
图4
按对象分类的锁”两个标记进行观察。
活动监视器--》按进程分类的锁
如下图5。
图5
活动监视器--》按对象分类的锁
如下图6。
图6
接下来说一下SQL SERVER 2008中的活动监视器的使用:
1) SQL SERVER 2008的活动监视器就不在管理中了。一、点击工具栏上的图标。二、使用右键点击数据库服务器,如下图7。然后都会出现如图8的图形界面工具。
图7
图8
,然后选择活动监视器获取新的实例信息所用的间隔。
图9