- 1
- 0
- 约8.43千字
- 约 38页
- 2018-12-29 发布于福建
- 举报
sql200常5第8章
8.6.2 锁的对象与模式 2.锁模式 1) 共享锁 共享锁(S 锁)允许并行事务读取同一种资源。 2)排他锁 排他锁(X 锁)可以防止并发事务对资源进行访问。 3) 更新锁 更新锁(U 锁)可以防止常见的死锁。一次只有一个事务可以获得资源的更新锁(U 锁)。如果事务修改资源,则更新锁(U 锁)转换为排他锁(X 锁)。 4) 意向锁 数据库引擎使用意向锁来保护共享锁(S 锁)或排他锁(X 锁)放置在锁层次结构的底层资源上。 意向锁有两种用途: 防止其他事务以会使较低级别的锁无效的方式修改较高级别资源。 提高数据库引擎在较高的粒度级别检测锁冲突的效率。 8.6.3 死锁问题 死锁是有两个或以上的事务处于等待状态,每个事务都在等待另一个事务解除封锁,它才能继续执行下去,结果任何一个事务都无法执行,这种现象就是死锁。 下面两种情况下可能会出现死锁: 1.两个事务同时锁定了两个单独的对象,并且第一个事务要求在另外一个事务锁定的对象上获得一锁; 2.在一个数据库中有若干个长时间运行的事务执行并操作。 降低死锁的原则: 1.按同一顺序访问对象 2.避免事务中的用户交互 3.保持事务简短并在一个批处理中 4.使用低隔离级别 8.6.4 查看锁信息 Microsoft SQL Server 2005 提供的获取有关数据库引擎实例中的当前锁活动的
原创力文档

文档评论(0)