ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 读《Oracle 9i&10g编程艺术》记录---1.3.2 理解并发控制

读《Oracle 9i&10g编程艺术》记录---1.3.2 理解并发控制

原创 Linux操作系统 作者:andyxu 时间:2009-07-07 15:51:10 0 删除 编辑

如果对特定数据库如何实现并发控制了解不够,就会遭遇以下结果:
1. 破坏数据的完整性。
2. 随着用户数的增多,应用的运行速度减慢。
3. 不能很好地扩缩应用来支持大量用户。

1. 实现锁定
数据库使用锁(lock) 来保证任何给定时刻最多只有一个事务在修改给定的一段数据。实质上讲,正是锁机制才使并发控制成为可能。
Oracle锁定策略的总结:
1) Oracle只在修改时才对数据加行级锁。正常情况下不会升级到块级锁或表级锁(不过两段提交期间的一段很短的时间内除外,这是一个不常见的操作)。
2) 如果只是读,则Oracle不会对数据进行锁定,不会因为简单的读操作而对数据行加锁。
3) 写操作不会阻塞出操作。
4) 写操作会阻塞对同一数据行的其他写操作,而读操作不会阻塞写操作。

2.防止丢失更新
Oracle的无阻塞方法有一个副作用,如果确实想保证一次最多只有一个用户访问一行数据,开发人员就得自己做些工作。
如: select ........ for update;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/110321/viewspace-608533/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-06-26

  • 博文量
    167
  • 访问量
    291952