加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

【Oracle】再看事务

发布时间:2020-12-12 16:02:32 所属栏目:百科 来源:网络整理
导读:事务(Transaction):数据库区别于文件系统的特性之一。 事务会把数据库从一种一致状态转变为另一种一致状态,这就是食物的任务。 Oracle多版本控制机制提供了非阻塞读,以及读写一致性。 回顾下oracle的锁: AE锁是一个版本锁,这是oracle 11g新增的。 TX
READ UNCOMMITTED 允许 允许 允许 READ COMMITTED – 允许 允许 REPEATABLE READ – – 允许 SERIALIZABLE – – –

隔离级别的3中情况
- 脏读(dirty read):你能读取未提交的数据,也就是脏数据。
- 不可重复读(nonrepeatable read):这意味着,如果你在T1时间读取某一行,在T2时间重新读取这一行时,这一行可能已经有所修改,也许它已经消失,也可能被更新了。
- 幻象读(phantom read):如果你在T1时间执行一个查询,在T2时间再次执行这个查询,此时数据库中可能已经增加了行。与不可重复读的区别是:读取的数据不会改变,只是有了更多的数据。

Oracle支持READ UNCOMMITTED的”精神“,即非阻塞读。但不支持脏读[1]。


[1] Oracle_Database_9i10g11g编程艺术深入数据库体系结构第2版221页。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

事务(Transaction):数据库区别于文件系统的特性之一。
事务会把数据库从一种一致状态转变为另一种一致状态,这就是食物的任务。
Oracle多版本控制机制提供了非阻塞读,以及读写一致性。

回顾下oracle的锁:

  • AE锁是一个版本锁,这是oracle 11g新增的。
  • TX(事务处理锁):修改数据的事务在执行期间会获得这种锁。
  • TM(DML队列)锁和DDL锁:在你修改一个对象的内容(对应TM锁)或对象本身(对应DDL锁)时,这些锁可以确保对象的结构不被修改。
  • 闩(latch)和Mutex:这是Oracle的内部锁,用来协调对其共享数据结构的访问。

回顾下事务隔离级别:
ANSI隔离级别

隔离级别 脏读 不可重复读 幻象读
    推荐文章
      热点阅读