OGG DDL 操作详解

2024-02-28 12:32
文章标签 详解 操作 ddl ogg

本文主要是介绍OGG DDL 操作详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


DLL说明

从OGG 12c 开始,提供了2种DDL方式:

(1)trigger-based DDL capture:通过数据库级别的触发器来捕获。

(2)native DDL capture:也叫:triggerless DDLcapture模式,在

Source 端进行logmining。

 

具体的规则如下:

(1)Extract 使用的是integrated 模式,但是数据库是11.2.0.4 之前的,

那么必须使用trigger-based DDL capture。

(2)Extract 使用的是classic capture 模式,不管数据库是什么版本,都 

必须使用trigger-based DDL capture。因为Native DDL capture不

支持classic capture 模式。

(3)Extract是integrated模式,数据库版本大于等于11.2.0.4,那么必须

使用native DDL capture。 这种模式也叫triggerless DDL capture。

 

DLL语句长度限制

OGG使用byte为单位来计算DDL语句的长度,在12c中,最大支持4MB的DDL语句。如果DDL的长度超过4MB,那么Extract会发出警告并且忽略这个DDL操作。


查看异常信息

一般使用VIEW REPORTGROUPNAME


查看Replicat的DDL报告

Replicat 报告包含如下信息:
1Source 端每个DDL 操作的语法和SCN 值。
2DDL 条目的MAPPED, UNMAPPED 等信息。
3)其他记录处理过程的条目。
4)附加的条目,记录操作是成功还是失败。

2013-01-20 15:11:45 GGS INFO 2104 DDL found, operation [drop table myTableTemp ], Source SCN [1186713.0].                

2013-01-20 15:11:45 GGS INFO 2100 DDL is of mapped scope, after mapping new operation [drop table "QATEST2"."MYTABLETEMP" ].                

2013-01-20 15:11:45 GGS INFO 2100 DDL operation included [include objname myTable*], optype [DROP], objtype [TABLE], objname                 

[QATEST2.MYTABLETEMP].                

2013-01-20 15:11:45 GGS INFO 2100 Executing DDL operation.                

2013-01-20 15:11:48 GGS INFO 2105 DDL error ignored for next retry: error code [942], filter [include objname myTableTemp],                 

error text [ORA-00942: table or view does not exist], retry [1].                

2013-01-20 15:11:48 GGS INFO 2100 Executing DDL operation , trying again due to RETRYOP parameter.                

2013-01-20 15:11:51 GGS INFO 2105 DDL error ignored for next retry: error code [942], filter [include objname myTableTemp],                 

error text [ORA-00942: table or view does not exist], retry [2].                

2013-01-20 15:11:51 GGS INFO 2100 Executing DDL operation, trying again due to RETRYOP parameter.                

2013-01-20 15:11:54 GGS INFO 2105 DDL error ignored for next retry: error code [942], filter [include objname myTableTemp],                 

error text [ORA-00942: table or view does not exist], retry [3].                

2013-01-20 15:11:54 GGS INFO 2100 Executing DDL operation, trying again due to RETRYOP parameter.                

2013-01-20 15:11:54 GGS INFO 2105 DDL error ignored: error code [942], filter [include objname myTableTemp], error                 

text [ORA-00942:table or view does not exist].                


查看Extract的DDL报告

Extract report 包含如下信息:
 (1) Capture DDL 操作的条目语法,开始和结束的SCN值, oracle 实例,DDL sequence number(从 

history tableSEQNO 列查询)和 操作的大小(单位byte)。
 (2) 记录应用操作的子条目,如INCLUDE  EXCLUDE filtering
 (3) 其他的条目,记录操作是否写入trail 

2013-01-20 15:11:41 GGS INFO 2100 DDL found, operation [create table myTable                 

(                

myId number (10) not null,                

myNumber number,                

myString varchar2(100),                

myDate date,                

primary key (myId)                

) ], start SCN [1186754], commit SCN [1186772] instance [test11g (1)], DDL seqno [4134].                

2013-01-20 15:11:41 GGS INFO 2100 DDL operation included [INCLUDE OBJNAME myTable*], optype [CREATE], objtype [TABLE], objname                

 [QATEST1.MYTABLE].                

2013-01-20 15:11:41 GGS INFO 2100 DDL operation written to extract trail file.                

2013-01-20 15:11:42 GGS INFO 2100 Successfully added TRAN DATA for table with the key, table [QATEST1.MYTABLE], operation [ALTER TABLE                

 "QATEST1"."MYTABLE" ADD SUPPLEMENTAL LOG GROUP "GGS_MYTABLE_53475" (MYID) ALWAYS /* GOLDENGATE_DDL_REPLICATION */ ].                

2013-01-20 15:11:43 GGS INFO 2100 DDL found, operation [create table myTableTemp (vid varchar2(100),someDate date,primary key (vid)                

) ], start SCN [1186777], commit SCN [1186795] instance [test11g (1)], DDL seqno [4137].                

2013-01- 20 15:11:43 GGS INFO 2100 DDL operation excluded [EXCLUDE OBJNAME myTableTemp OPTYPE CREATE], optype [CREATE], objtype                 

[TABLE],objname [QATEST1.MYTABLETEMP].                


查看处理报告的统计信息

  可以使用如下命令来查看DDL 处理过程的统计信息,该命令可以查看Extract和Replicat的报告:

SEND {EXTRACT | REPLICAT} group REPORT



这篇关于OGG DDL 操作详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/755519

相关文章

Debezium 与 Apache Kafka 的集成方式步骤详解

《Debezium与ApacheKafka的集成方式步骤详解》本文详细介绍了如何将Debezium与ApacheKafka集成,包括集成概述、步骤、注意事项等,通过KafkaConnect,D... 目录一、集成概述二、集成步骤1. 准备 Kafka 环境2. 配置 Kafka Connect3. 安装 D

Java中ArrayList和LinkedList有什么区别举例详解

《Java中ArrayList和LinkedList有什么区别举例详解》:本文主要介绍Java中ArrayList和LinkedList区别的相关资料,包括数据结构特性、核心操作性能、内存与GC影... 目录一、底层数据结构二、核心操作性能对比三、内存与 GC 影响四、扩容机制五、线程安全与并发方案六、工程

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

Spring Cloud LoadBalancer 负载均衡详解

《SpringCloudLoadBalancer负载均衡详解》本文介绍了如何在SpringCloud中使用SpringCloudLoadBalancer实现客户端负载均衡,并详细讲解了轮询策略和... 目录1. 在 idea 上运行多个服务2. 问题引入3. 负载均衡4. Spring Cloud Load

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

在 Spring Boot 中使用 @Autowired和 @Bean注解的示例详解

《在SpringBoot中使用@Autowired和@Bean注解的示例详解》本文通过一个示例演示了如何在SpringBoot中使用@Autowired和@Bean注解进行依赖注入和Bean... 目录在 Spring Boot 中使用 @Autowired 和 @Bean 注解示例背景1. 定义 Stud

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

Go路由注册方法详解

《Go路由注册方法详解》Go语言中,http.NewServeMux()和http.HandleFunc()是两种不同的路由注册方式,前者创建独立的ServeMux实例,适合模块化和分层路由,灵活性高... 目录Go路由注册方法1. 路由注册的方式2. 路由器的独立性3. 灵活性4. 启动服务器的方式5.