楼主: ZALBB

[精华] 我对ORACLE数据锁的一点体会

[复制链接]
论坛徽章:
11
授权会员
日期:2005-10-30 17:05:33ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44会员2007贡献徽章
日期:2007-09-26 18:42:10嫦娥
日期:2006-09-26 17:31:50生肖徽章:马
日期:2006-09-07 17:03:44生肖徽章:狗
日期:2006-09-07 10:14:30生肖徽章:鼠
日期:2006-09-06 21:17:11生肖徽章:兔
日期:2006-09-06 21:16:33ITPUB元老
日期:2006-08-24 11:59:54会员2006贡献徽章
日期:2006-04-17 13:46:34
51#
发表于 2007-3-15 13:27 | 只看该作者
经典!

使用道具 举报

回复
redhotkiss 该用户已被删除
52#
发表于 2007-3-15 17:47 | 只看该作者
高手过招,学习中

使用道具 举报

回复
论坛徽章:
2
设计板块每日发贴之星
日期:2006-10-17 01:09:06授权会员
日期:2007-01-10 08:53:09
53#
发表于 2007-3-16 10:06 | 只看该作者
谢谢楼主

使用道具 举报

回复
论坛徽章:
24
生肖徽章:狗
日期:2006-09-07 10:14:43数据库板块每日发贴之星
日期:2008-07-26 01:02:20生肖徽章2007版:兔
日期:2008-10-13 11:10:11奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:21开发板块每日发贴之星
日期:2008-12-27 01:01:09生肖徽章2007版:马
日期:2009-11-18 10:45:032010新春纪念徽章
日期:2010-03-01 11:21:02ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ERP板块每日发贴之星
日期:2011-05-18 01:01:01ITPUB十周年纪念徽章
日期:2011-11-01 16:21:15
54#
发表于 2007-3-17 20:54 | 只看该作者
踩个脚印,明天学习!

使用道具 举报

回复
论坛徽章:
0
55#
发表于 2007-3-20 22:28 | 只看该作者
果然好贴,看完这篇帖子,又认真的看了一下 oracle9i的 concept
针对于--jeffly73说的:
------------
为了方便地进行锁冲突的检测,希望在表(上)级能够标识行(下)级加锁的情况,这就引入了“意向锁”(intention lock mode)的概念。根据在行级要加S锁或X锁的不同,在表级相应的就有两种意向锁,即:如果事务要在行级获得S锁,它需要首先在表级获得意向共享锁(Intent Share Lock,IS锁);如果事务要在行级获得X锁,它需要首先在表级获得意向排它锁(Intent Exclusive Lock,IX锁)。
------------
有一些不同的理解,并做了实验,可能很简单,请指正:
oracle意向锁的加入,应该并不是为了方便的进行锁冲突检测,而是避免同时发生ddl操作
比如:table aaa(只包含temp一个字段) 有2行记录 1,2
1》首先在一个session中执行:select * from aaa for update
2》然后在另外一个session中执行:update aaa set temp=temp where temp=1 会锁住
3》但如果执行:update aaa set temp=temp where temp=3 就不会锁住

说明锁的检测主要是检测行级的冲突 其实表级的锁操作2,3是一样的,oracle dml锁遵循的原则是最小数据锁定(翻译可能不准确),不应该出现检查了表级锁就能确定本会话是否能对我所操作的记录可否操作,我理解是这个样子。

如果理解不对 请指正。

使用道具 举报

回复
论坛徽章:
24
生肖徽章:狗
日期:2006-09-07 10:14:43数据库板块每日发贴之星
日期:2008-07-26 01:02:20生肖徽章2007版:兔
日期:2008-10-13 11:10:11奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:21开发板块每日发贴之星
日期:2008-12-27 01:01:09生肖徽章2007版:马
日期:2009-11-18 10:45:032010新春纪念徽章
日期:2010-03-01 11:21:02ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ERP板块每日发贴之星
日期:2011-05-18 01:01:01ITPUB十周年纪念徽章
日期:2011-11-01 16:21:15
56#
发表于 2007-3-21 11:27 | 只看该作者
这样学习才有进步!

使用道具 举报

回复
论坛徽章:
7
设计板块每日发贴之星
日期:2007-03-01 01:13:51设计板块每日发贴之星
日期:2007-03-21 01:15:57会员2007贡献徽章
日期:2007-09-26 18:42:10ITPUB元老
日期:2007-10-16 14:16:41授权会员
日期:2007-10-16 14:13:05ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44祖国60周年纪念徽章
日期:2009-10-09 08:28:00
57#
发表于 2007-3-22 14:37 | 只看该作者
讨论的已经超出数据库原理里面的锁概念。学习一下!

使用道具 举报

回复
论坛徽章:
36
生肖徽章:羊
日期:2006-09-07 10:16:04生肖徽章2007版:兔
日期:2008-01-02 17:35:53生肖徽章2007版:虎
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:蛇
日期:2008-11-14 11:41:23生肖徽章2007版:狗
日期:2008-11-15 19:27:06生肖徽章2007版:马
日期:2008-11-19 17:15:47生肖徽章2007版:猪
日期:2008-11-20 12:22:36生肖徽章2007版:羊
日期:2008-11-24 07:42:24
58#
发表于 2007-3-22 16:38 | 只看该作者
真tmd好贴,深入浅出

使用道具 举报

回复
论坛徽章:
8
授权会员
日期:2007-02-07 08:06:00数据库板块每日发贴之星
日期:2007-02-16 01:02:55数据库板块每日发贴之星
日期:2007-03-20 01:05:44数据库板块每日发贴之星
日期:2007-03-21 01:07:54数据库板块每日发贴之星
日期:2007-03-23 01:08:55数据库板块每日发贴之星
日期:2007-03-27 01:07:31数据库板块每日发贴之星
日期:2007-03-28 01:07:49会员2007贡献徽章
日期:2007-09-26 18:42:10
59#
发表于 2007-4-9 13:26 | 只看该作者
故事没说完啊,希望能说完啊

使用道具 举报

回复
论坛徽章:
10
授权会员
日期:2007-05-27 10:01:372010年世界杯参赛球队:巴西
日期:2010-02-09 17:18:59祖国60周年纪念徽章
日期:2009-10-09 08:28:002009日食纪念
日期:2009-07-22 09:30:002009新春纪念徽章
日期:2009-01-04 14:52:28奥运会纪念徽章:排球
日期:2008-07-09 05:35:32奥运会纪念徽章:自行车
日期:2008-05-24 17:23:07生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:鸡
日期:2008-01-02 17:35:532013年新春福章
日期:2013-02-25 14:51:24
60#
发表于 2007-4-13 15:48 | 只看该作者
越看越糊涂

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表