QUOTE:
最初由 m1464370 发布
怎么得到Sybase中的死锁数量??还有sybase的当前会话数怎么得到呢??
首先确定一个概念什么是锁,什么是死锁,2者是不同的.
在多用户环境中,多个事务同时访问相同的数据。数据不隔离会导致数据结果不正确, 而锁就是一个自动机制隔离数据以避免数据修改间的相互冲突.
按规定,当两个用户进程各自拥有单独的数据页锁、索引页锁或表锁且都要获取由其它进程锁定的相同页锁或表锁时,便发生死锁。出现此情况时,第一个进程等待第二个进程释放锁,而第二个进程在第一个进程释放锁前,不会释放锁.
在系统中可以通过sp_lock,知道当前锁的数量, 通过sp_who知道当前会话的数量.
如果要知道死锁的信息,可以将 print deadlock information 设置为 1,此设置将更加详细的死锁消息发送至日志及服务器启动的终端会话。不过这个设置会影响性能. 因此,只有在尝试确定死锁起因时才能使用它。