Sybase 鎖模式
Sybase ASE有三種鎖模式:AllPages,DataPages,DataRows
Sybase的數(shù)據(jù)有table pages和index pages,最小分配單位為pages,不同的鎖模式對于table pages和index pages有不同的表現(xiàn),具體如下:
Locking Schema | Locks on Index | Locks on Data |
All Pages | Page | Page |
DataPages | Not locked | Page |
DataRows | Not locked | Row |
如上表所示:
1、AllPages鎖模式對于并發(fā)的限制最高,他對index pages和table pages都加頁鎖(當(dāng)頁被鎖住的時(shí)候,頁上的所有rows都不能被其他session訪問)
2、DataPages對table pages加頁鎖
3、DataRows:強(qiáng)烈建議用這個(gè)鎖模式,對于oltp應(yīng)用,如果用前兩種鎖模式會(huì)導(dǎo)致頻繁死鎖
另外,DataPages和DataRows對于index pages的控制采用latch方式,一種輕量級(jí)的鎖機(jī)制(熟悉oracle會(huì)比較清楚)
對于Sybase ASE來說,鎖是非常寶貴的資源,不要長時(shí)間持有鎖,所以一般我們在寫應(yīng)用的時(shí)候盡量減少長事務(wù)
另:Sybase ASE缺省的事務(wù)隔離級(jí)別:Read Committed
posted on 2008-04-01 10:50 tacy lee 閱讀(929) 評(píng)論(0) 編輯 收藏 所屬分類: 數(shù)據(jù)庫