多种数据库主从复制 工具golden gate

来源:互联网 发布:泰邦口罩 淘宝 编辑:程序博客网 时间:2024/04/28 12:38

GoldenGate简介 
Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步。Oracle Golden Gate可以在异构的IT基础结构(包括几乎所有常用操作系统平台和数据库平台)之间实现大量数据亚秒一级的实时复制,从而在可以在应急系统、在线报表、 实时数据仓库供应、交易跟踪、数据同步、集中/分发、容灾、数据库升级和移植、双业务中心等多个场景下应用。同时,Oracle Golden Gate可以实现一对一、广播(一对多)、聚合(多对一)、双向、点对点、级联等多种灵活的拓扑结构。
         Golden Gate复制原理是通过挖掘Oracle的日志(redo和归档),然后生成自己的队列文件,通过队列文件传输到目标端,目标端通过读取相应的队列文件在目标数据库中重演事务。 Golden Gate 可以跨不同的数据库进行复制,如Oracle、IBM DB2、MS SQL Server等。Quest 公司也有一个复制软件:SharePlex,不过它只支持Oracle到Oracle的复制。用过Toad 的人应该都知道Quest 公司。

Golden Gate(简称OGG)提供异构环境下交易数据的实时捕捉、变换、投递。

OGG支持的异构环境有:

OGG的特性:

 

  • 对生产系统影响小:实时读取交易日志,以低资源占用实现大交易量数据实时复制
  • 以交易为单位复制,保证交易一致性:只同步已提交的数据
  • 高性能
    • 智能的交易重组和操作合并
    • 使用数据库本地接口访问
    • 并行处理体系
  • 灵活的拓扑结构:支持一对一、一对多、多对一、多对多和双向复制等
  • 支持数据过滤和转换
    • 可以自定义基于表和行的过滤规则.
    • 可以对实时数据执行灵活影射和变换.
  • 提供数据压缩和加密:降低传输所需带宽,提高传输安全性.
OGG的工作原理:

 

OGG的进程:

 

  • Manager进程是GoldenGate的控制进程,运行在源端和目标端上。它主要作用有以下几个方面:启动、监控、重启Goldengate的其他进程,报告错误及事件,分配数据存储空间,发布阀值报告等。在目标端和源端有且只有一个manager进程
  • Extract运行在数据库源端,负责从源端数据表或者日志中捕获数据。Extract的作用可以按照阶段来划分为:
    • 初始时间装载阶段:在初始数据装载阶段,Extract进程直接从源端的数据表中抽取数据
    • 同步变化捕获阶段:初始数据同步完成以后,Extract进程负责捕获源端数据的变化(DML和DDL)
  • Data Pump进程运行在数据库源端,其作用是将源端产生的本地trail文件,把trail以数据块的形式通过TCP/IP 协议发送到目标端,这通常也是推荐的方式。pump进程本质是extract进程的一种特殊形式,如果不使用trail文件,那么extract进程在抽取完数据以后,直接投递到目标端,生成远程trail文件。
  • Collector进程与Data Pump进程对应 的叫Server Collector进程,这个进程不需要引起我的关注,因为在实际操作过程中,无需我们对其进行任何配置,所以对我们来说它是透明的。它运行在目标端,其 任务就是把Extract/Pump投递过来的数据重新组装成远程ttrail文件。
  • Replicat进程,通常我们也把它叫做应用进程。运行在目标端,是数据传递的最后一站,负责读取目标端trail文件中的内容,并将其解析为DML或 DDL语句,然后应用到目标数据库中。
关于OGG的Trail文件:
  • 为了更有效、更安全的把数据库事务信息从源端投递到目标端。GoldenGate引进trail文件的概念。前面提到extract抽取完数据以后 Goldengate会将抽取的事务信息转化为一种GoldenGate专有格式的文件。然后pump负责把源端的trail文件投递到目标端,所以源、目标两端都会存在这种文件。
  • trail文件存在的目的旨在防止单点故障,将事务信息持久化,并且使用checkpoint机制来记录其读写位置,如果故障发生,则数据可以根据checkpoint记录的位置来重传 。

Oracle教程:实例故障恢复http://www.linuxidc.com/Linux/2011-08/40857.htm

Linux-6-64下安装Oracle 12C笔记 http://www.linuxidc.com/Linux/2013-07/86805.htm

在CentOS 6.4下安装Oracle 11gR2(x64)http://www.linuxidc.com/Linux/2014-02/97374.htm

Oracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htm

Debian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm

更多Oracle相关信息见Oracle 专题页面http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-07/103975.htm

 

0 0