深入了解OGG goldengate 的DDL 复制
深入了解OGG goldengate 的DDL 复制1) 概述
GoldenGate使用数据库的Trigger实现DDL复制的功能。该方式通过建立一个数据库级的trigger,捕捉DDL语句放到队列文件中,进而复制到目标端,实现DDL的复制。
2) 优势
使用GoldenGate的DDL复制只需执行OGG提供的脚本并设置相关参数即可,不对当前OGG复制做较大的调整,实施工期较短,能够满足常见DDL的复制要求。
3) 劣势
使用内置DDL复制需要注意的问题包括:
I. 错误的传播
DDL本身是一把双刃剑,如果网省端做了drop/truncate表等类似的误操作,DDL复制会把这些错误忠实复制到目标端,造成生产和灾备的数据均遭到破环,容灾也就失去了意义。
II. 生产端性能下降
Trigger本身的触发会导致日常DDL操作变慢,将日常DDL操作大量记入数据库临时表也会加重数据库的负担,导致数据库整体性能下降,具体影响只能通过实际测试予以评估。
III. 某些DDL操作会带来两端不一致
将源端的DDL语句复制到目标端并不能保证两端完全一致。以下是部分可能产生不一致的场景:
创建一个索引等数据库系统自动命令的对象,通过SQL复制到目标端后系统自动产生的对象名与源端会不同,以后对该对象的修改和删除操作会失败;
使用create table as select from语句创建的表,其DDL被复制过去后会自动将数据填入表内,但这些DML变化同样可以被OGG的DML复制过去;
两个库之间的物理上的差异,可能会造成DDL语句失败,如表空间、数据文件的不同。
因SAP本身内部操作并不稳定,无法预知其是否存在类似操作。
IV. 有一定的维护工作量
由于上面的限制和其它因素导致源端SQL在目标端无法执行的情况,需要人工介入,工作量目前尚无法估算。
4) 实施工作量
每个库的内置DDL复制配置需要1天时间,运行初期需要进行实时监控,发现问题进行人工排除。 good 不错 学习学习 总结的不错。 不错,学习中!
很好,学习了 ogg ddl的稳定性怎么提高
页:
[1]