Oracle 补充日志

                                                     Oracle 补充日志

介绍

补充日志不是独立的日志,而是对重做日志变更矢量的补充。LogMiner、闪回事务、闪回事务查询等功能需要开启补充日志才能正常工作。

分类

补充日志可分为两类数据库级别补充日志和表级别补充日志,数据库级别补充日志可分为最小补充日志、主键补充日志、唯一索引补充日志、外键补充日志、全体补充日志6种,表级别补充日志在数据库级别补充日志的基础上增加了一种自定义补充日志,没有最小补充日志。

功能

         因为insert会记录所有修改后字段,delete会记录所有修改前字段,所以补全日志只对update产生影响,开启补全日志时共享池中的SQL游标都会失效,他们的影响和功能如下:

  
  

最小补充日志



主键补充日志



唯一补充日志



Update操作的影响



产生特殊的日志信息,可以识别update命令产生的行迁移和行转换。Logminer和闪回事务查询功能需要最小补全日志支持。打开最小补全日志会使共享池SQL游标失效。



无条件补充日志,无论主键是否被修改旧值都会被记录到日志中。没有主键则记录长度最小唯一非空索引,没有非空唯一索引则记录所有字段。依赖最小补全日志,开启主键补充日志自动开启最小补充日志。关闭最小补全日志自动关闭主键补全日志



有条件补充日志,当复合唯一索引的其中一个字段被修改时,唯一索引的所有字段旧值都会被记录。唯一补充日志专门为复合唯一索引服务。



开启/关闭



开启/关闭:

  

alter database add/drop supplemental log  data



开启/关闭(数据库级)

  

alter database add/drop supplemental log  data (primary key)  columns

  

开启/关闭(表级)

  

alter table T1 add/drop supplemental log  data (primary key)  columns



开启/关闭(数据库级)

  

alter database add/drop supplemental log  data (unique)  columns

  

开启/关闭(表级)

  

alter table T1 add/drop supplemental log  data (unique)  columns



依赖





依赖最小补全日志



依赖最小补全日志









  
  

外键补充日志



全体补充日志



自定义补充日志()



Update操作的影响



有条件补充日志,当复合外键索引的其中一个字段被修改时,外键索引的所有字段旧值都会被记录。唯一补充日志专为复合外键索引服务。



无条件补充日志,表的所有字段旧值都会被记录(除了LOBLONG类型)。



/无条件补充日志,设置多个字段为日志组,日志组中的任何字段被修改,整个日志组字段的旧值都记录在日志中。



开启/关闭



开启/关闭(数据库级)

  

alter database add/drop supplemental log  data (foreign key)  columns

  

开启/关闭(表级)

  

alter table T1 add/drop supplemental log  data (foreign key)  columns



开启/关闭(数据库级)

  

alter database add/drop supplemental log  data (all) columns

  

开启/关闭(表级)

  

alter table T1 add/drop supplemental log  data (all) columns



开启/关闭(表级)

  

alter table T1 add/drop supplemental log  group GROUPNAME(C1,C2,C3) allways



依赖



依赖最小补全日志



依赖最小补全日志



依赖最小补全日志




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

转载于:http://blog.itpub.net/11693228/viewspace-1061073/

你可能感兴趣的:(Oracle 补充日志)