ASE锁模式:AllPages DataPages DataRows

王朝other·作者佚名  2008-07-09
窄屏简体版  字體: |||超大  

Sybase ASE有三种锁模式:AllPages,DataPages,DataRows

Sybase的数据有table pages和index pages,最小分配单位为pages,不同的锁模式对于table pages和index pages有不同的表现,具体如下:

Locking Schema Locks on Index Locks on Data

All Pages Page Page

DataPages Not locked Page

DataRows Not locked Row

如上表所示:

1、AllPages锁模式对于并发的限制最高,他对index pages和table pages都加页锁(当页被锁住的时候,页上的所有rows都不能被其他session访问)

2、DataPages对table pages加页锁

3、DataRows:强烈建议用这个锁模式,对于oltp应用,如果用前两种锁模式会导致频繁死锁

另外,DataPages和DataRows对于index pages的控制采用latch方式,一种轻量级的锁机制(熟悉oracle会比较清楚)

对于Sybase ASE来说,锁是非常宝贵的资源,不要长时间持有锁,所以一般我们在写应用的时候尽量减少长事务。

注:Sybase ASE缺省的事务隔离级别为Read Committed。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航