企鹅fm和喜马拉雅fm:DB2中锁升级 - xiangmeng2000的个人空间 - ITPUB个人空间 - powered by X-Space
来源:百度文库 编辑:偶看新闻 时间:2024/04/27 16:02:26
DB2数据库中的每个锁在内存中都需要一定的内存空间,为了减少锁需要的内存开销,DB2提供了锁升级功能。锁升级通过对表加上非意图性的表锁,同时释放行锁来减少锁的数目,从而达到减少锁所需要的内存开销的目的。锁升级是数据库管理器自动完成,但是有两个数据库配置参数直接影响着锁升级的处理:
Locklist : 数据库全局内存中用于存的内存,单位是页(4k)
Maxlocks:允许某个应用程序所有的锁所使用的内存占整个锁内存的百分比。
在两种情况下会触发锁升级:
·某个应用程序请求的锁所占用的内存空间超出了maxlocks和locklist的乘积大小。这时,数据库管理器尝试为该提出锁请求的应用程序申请表锁,同时释放行锁来节省锁内存空间。
·数据库中的所有锁占用的内存空间超过locklist大小。这时,数据库管理器也将尝试为提出锁请求的应用申请表锁,并释放行锁来节省内存空间。
锁升级有可能会失败,例如:一个应用正在对一个表加IX锁,对表中的某些行加X锁,另一个应用又来请求表上的IS锁以及表中大量行上的S锁,由于申请的锁数目过多而引起锁升级。于是数据库管理器尝试着为该应用申请表锁S来减少应用所需要的锁的数目,但是表锁S与表上已经存在的IX锁相冲突,于是锁升级不能成功。于是锁升级失败的应用接到一个-912的SQLCODE。在锁升级失败后,应该考虑增加locklist或maxlocks,同时对于编程人员而言,可以在程序里对锁升级失败的应用进行回滚并重新提交(例如:if sqlca.sqlcode=-912 then rollback and retry)
db2中引号如何引用变量
在db2 中事务的概念
在db2中 怎么样进行数据类型转换
db2 中如何对多元素数据集进行筛选
什么是DB2
delphi6z中,用ADO连接interbase和db2数据库要怎么连
db2中,多长的字段使用char,多长的字段使用varchar
请问哪位大侠有DB2菜鸟级的中文资料,等待中ing...
DB2中执行IMPORT语句时报“主变量值对于其相应的使用来说过大”是什么问题
在DB2中创建一个简单的SQL存储过程,用程序如何调用这个存储过程?
DB2中的索引
db2备份如何做?
帮忙指点DB2?
DB2数据库的问题?
quest central for db2
SYBASE.DB2的概念
jsp如何连接db2
DB2高手进来一下!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
DB2路径命名规范?
请问DB2是什么东西?
关于db2 命令
DB2安装问题
求DB2连接工具
ibm db2 9