
Lock
wpc820411
这个作者很懒,什么都没留下…
展开
-
KILL死锁的存储过程
<br /><br />死锁可以查一下:<br />1:sp_who 或 sp_who2<br />2: Select * from sysprocesses where blocked <> 0<br />3: 企业管理器->服务器->管理工具->活动->当前活动然后把他kill掉。。。<br />4:SQL事件探查器,监控一下,看主要是那些处理引起的死锁.然后做相应的处理.<br />用事件探查器new一个trace,监视一下造成你sqlserver停顿的情况。。。<br />最好的办法还是检查转载 2010-10-08 12:57:00 · 647 阅读 · 0 评论 -
浅谈锁机制
<br /><br />锁的概述 <br />一. 为什么要引入锁 <br />多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: <br />丢失更新<br />A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 <br />脏读<br />A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致 <br />不可重复读<br />A用户读取数据,随后B用户读原创 2010-10-08 10:10:00 · 505 阅读 · 0 评论 -
一例胜千言,SQL Sever数据库中的锁25例
<br />数据库锁Table of Contents1 前言2 锁的种类3 何时加锁?4 锁的粒度5 锁与事物隔离级别的优先级6 数据库的其它重要Hint以及它们的区别7 锁的超时等待8 附:各种锁的兼容关系表9 如何提高并发效率10 后记1 前言<br />数据库大并发操作要考虑死锁和锁的性能问题。看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一个线程,T2 为另一个线程。T3,T4以此类推。下面以SQL转载 2010-11-05 16:05:00 · 639 阅读 · 0 评论 -
提高数据库并发性能概要
<br />Table of Contents1 细粒度锁表2 拆表2.1 物理拆分方式2.2 逻辑拆分方式3 多数据源(多库)4 乐观锁5 临时表6 缓存7 数据库集群8 读写分离策略9 SQL优化10 正确使用索引1 细粒度锁表减少大事物操作 (一个包含很多SQL语句、牵涉很多表的大事物操作锁住的资源也会多);尽量不使用表级排他锁,而是用行级锁;又因为锁一般是由数据库根据你的 SQL自动分配,所以要注意SQL的写法。比如select * into B from A<br />该操作会创建B表,并对B转载 2010-11-05 16:14:00 · 824 阅读 · 0 评论