返回顶部
首页 > 资讯 > 数据库 >oracle附加日志(supplemental log)
  • 264
分享到

oracle附加日志(supplemental log)

2024-04-02 19:04:59 264人浏览 八月长安
摘要

附加日志(supplemental log)可以指示数据库在日志中添加额外信息到日志流中,以支持基于日志的工具,如逻辑standby、streams、GoldenGate、LogMiner。可以在数据库和表

附加日志(supplemental log)可以指示数据库在日志中添加额外信息到日志流中,以支持基于日志的工具,如逻辑standby、streams、GoldenGate、LogMiner。可以在数据库和表上设置。

1.数据库级设置,分两类:
1.1最小附加日志(minimal supplemental logging):
DATA选项启用最小附加日志。启用最小日志可以确保LogMiner(或其他任何基于LogMiner的产品)可以支持行链接、簇表、索引组织表等。
语法如下:
alter database {add|drop} supplemental log data;

1.2标识键日志(identification key logging):
DATA(all,primary key,unique,foreign key) columns选项启用最小日志及列数据日志。在源库日志为变化来源同步其他数据库的情况下,比如逻辑备用数据库,受影响的数据行必须以列数据标识(而不是rowid),必须启用此种附加日志。
语法如下:
alter database {add|drop} supplemental log {data(all,primary key,unique,foreign key) columns};

1.3缺省情况下,oracle不启用以上任何附加日志。当使用ALL,PRIMARY,UNIQUE或FOREIGN附加日志时最小补全日志默认开启(即检查结果为IMPLICIT)。 在删除所有导致IMPLICIT最小化附加日志的附加日志后,最小化附加日志变为NO。

1.4查询当前设置
SELECT supplemental_log_data_min min,
supplemental_log_data_pk pk,
supplemental_log_data_ui ui,
supplemental_log_data_fk fk,
supplemental_log_data_all allc
FROM v$database;

2,表级附加日志设置,分两类
2.1,可以通过以下语句设置命名日志组:
语法:
alter table table_name
add supplemental log group group_a(column_a [no log],column_b,…) [always];

NO LOG选项用于指定在日志中排除哪些列。在命名日志组中,至少存在一个无”NO LOG“的定长列。比如,对LONG列使用 no log选项,可以在更改LONG列时,记录其他列的内容(LONG列本身不能存在日志里)。

ALWAYS选项, 在更新时,日志组中的所有列都会记录在日志中。这就是所谓的”无条件“日志组,有时也叫”always log group“。如果不指定该选项,只有在日志组中的任何列被修改时,所有列才会出现在日志中。这就是所谓的”有条件“日志组。

说明:同一列可以在多个日志组中存在,但日志中只记录一次;同一列在“无条件”与“有条件”日志组中存在时,该列将“无条件”记录。

2.2,可以通过以下语句设置所有列或主键/外键/唯一键组合日志组:
语法:
alter table table_name
add supplemental log data(all,primary key,unique,foreign key) columns;

Oracle将生成无条件或有条件日志组。对于无条件日志组,日志中将记录该日志组中的所有列;对于有条件日志组,只有日志组中的列有变化时,才会记录日志组中的所有列。

如果指定“ALL”列,日志中将包含所有最大大小固定长度的列。这种日志是系统创建的无条件日志组。
如果指定“PRIMARY KEY”列,只要有更新,组成主键的所有列都会记录在日志中。这种日志是系统创建的无条件日志组。Oracle使用如下顺序确定附加记录哪些列:
*组成主键的列(主键有效,或rely且非DISABLED or INITIALLY DEFERRED状态)
*最小的、至少有一个非空列的唯一索引
*记录所有标量列
如果指定“UNIQUE”列,如果任何组成唯一键或位图索引的列被修改,组成该唯一键或位图索引的其他列都会记录在日志中。这种日志是系统创建的有条件日志组。

如果指定“FOREIGN KEY”列,如果任何组成外键的列被修改,组成该外键的其他列都会记录在日志中。这种日志是系统创建的有条件日志组。

2.3表级测试
drop table test;
create table test(x int,y int);

—增加附加日志
alter table test
add supplemental log data(all,primary key,unique,foreign key) columns;

select * from dba_log_groups;

select * from dba_log_group_columns;

—删除附加日志

alter table test
drop supplemental log data(all,primary key,unique,foreign key) columns;

select * from dba_log_groups;

select * from dba_log_group_columns;

 

—增加命名附加日志
alter table test
add supplemental log group group_a(x,y);

select * from dba_log_groups;

select * from dba_log_group_columns;

alter table test
drop supplemental log group group_a;


您可能感兴趣的文档:

--结束END--

本文标题: oracle附加日志(supplemental log)

本文链接: https://lsjlt.com/news/41011.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • oracle附加日志(supplemental log)
    附加日志(supplemental log)可以指示数据库在日志中添加额外信息到日志流中,以支持基于日志的工具,如逻辑standby、streams、GoldenGate、LogMiner。可以在数据库和表...
    99+
    2024-04-02
  • 附加日志(supplemental log)
    附加日志(supplemental log)可以指示数据库在日志中添加额外信息到日志流中,以支持基于日志的工具,如逻辑standby、streams、GoldenGate、LogMiner。可以在数据库和表上设置。1.数据库级设置,分两类:...
    99+
    2023-06-06
  • Oracle补充日志supplemental log的示例分析
    这篇文章给大家介绍Oracle补充日志supplemental log的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 Oracle 补充日志(su...
    99+
    2024-04-02
  • Oracle附加日志是怎样的
    这篇文章将为大家详细讲解有关Oracle附加日志是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 Oracle附加日志 分类分为两个等级:数据库级...
    99+
    2024-04-02
  • oracle表级附加日志如何查询
    要查询Oracle数据库中的表级附加日志,可以使用以下查询语句: SELECT table_name, supplement...
    99+
    2024-04-09
    oracle
  • 怎么理解nologging、force logging、supplemental log日记
    本篇内容介绍了“怎么理解nologging、force logging、supplemental log日记”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何...
    99+
    2024-04-02
  • Python 日志(Log)
    日志? 日志,就是用来记录程序运行的时候都发生了什么事。 事件按严重程度划分level 事件内容: 时间 位置 事件的严重程度--level 内容 用logging模块实现 logging 模块 日志级别(level):DEB...
    99+
    2023-01-30
    日志 Python Log
  • 使用log miner 分析oracle日志
    当我们不小心误操作致使数据库数据丢失、改变时, 需要对数据库对象做基于时间点的恢复,找到我们需要的数据,这个时间点不能认为精确确定,我们可以通过对oracle日志进行分析,而获得无操作的精确时间点。orac...
    99+
    2024-04-02
  • 【Log日志】springboot项目中集成Log日志详解
    springboot项目中集成Log日志详解 一、Log日志介绍1.Log 日志组件主要作用及用途2.日志的级别Level级别控制 3.日志的输出Import3.1 快速使用3.2 日志文件输出3.3 自定义配置 4. ...
    99+
    2023-08-23
    spring boot java spring Log 日志
  • EBS 11i 日志 log
    1、默认网络端口:1)、EBS11i 用到的所有端口s_dbport=1521s_webport=8000s_webport_pls=8200s_oprocmgr_port=8100s_formsport=...
    99+
    2024-04-02
  • oracle 12C RAC 集群日志(cluster log)目录
    [grid@shurkcs ~]$ adrci ADRCI: Release 12.2.0.1.0 - Production on Thu Mar 1 09:25:45 2018 Copyright...
    99+
    2024-04-02
  • nginx(二)---Nginx 日志Log
    日志配置日志轮转/切割日志分析 1.日志配置         1.1日志模块 官方文档    http://nginx.org/en/docs/http/ngx_http_log_module.html 日志模块的名称       ...
    99+
    2023-09-02
    nginx 运维 服务器
  • Undo log日志详解
    今天和大家分享一下Undo log日志的知识点 1.什么是undo log? 撤销日志,在数据库事务开始之前,MYSQL会去记录更新前的数据到undo log文件中。如果事务回滚或者数据库崩溃时,可以利用undo log日志中记录的日志...
    99+
    2023-08-21
    mysql 数据库 java undo log
  • MySQL日志系统bin log、redo log和undo log
    MySQL日志系统bin log、redo log和undo log       今人不见古时月,今月曾经照古人。   简介:日志是MySQL数据库的重要组成部分,记录着数据库运行期间各种状态信息,主要包括错误日志、查询日志、慢查询日志、...
    99+
    2019-07-22
    MySQL日志系统bin log redo log和undo log
  • 如何配置Log日志
    这篇文章主要讲解了“如何配置Log日志”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何配置Log日志”吧!1.Slf4jSlf4j 的全称是 Simple...
    99+
    2024-04-02
  • mysql .log是什么日志
    mysql .log是指二进制日志文件,它是MySQL数据库引擎记录所有数据库更改操作的日志文件,其作用有:1、数据恢复,可以将数据库还原到特定时间点之前的状态,从而实现数据恢复;2、主从复制,主服务器将生成并写入二进制日志文件,然后从服务...
    99+
    2023-07-25
  • mysql日志文件之undo log和redo log
    目录前言1 undo1.1 undo是什么1.2 undo参数1.3 undo空间管理2 redo2.1 redo是什么2.2 redo 参数2.3 r...
    99+
    2024-04-02
  • 如何进行GoldenGate附加日志的理解
    本篇文章为大家展示了如何进行GoldenGate附加日志的理解,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。附加日志是什么呢?使用OGG的时候为什么需要打开附加日志...
    99+
    2024-04-02
  • MySQL 撤销日志与重做日志(Undo Log与Redo Log)相关总结
    Undo Log 数据库事务开始之前,会将要修改的记录存放到 Undo 日志里,当事务回滚时或者数据库崩溃时,可以利用 Undo 日志,撤销未提交事务对数据库产生的影响。 Undo Log产生和销毁 Undo L...
    99+
    2022-05-20
    MySQL 撤销日志Undo Log MySQL 重做日志Redo Log
  • MySQL中的redo log和undo log日志详解
    MySQL日志系统中最重要的日志为重做日志redo log和归档日志bin log,后者为MySQL Server层的日志,前者为InnoDB存储引擎层的日志。 1 重做日志redo log 1.1 什么是redo ...
    99+
    2022-05-13
    MySQL redo log mysql undo log
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作