ogg 下载地址:
http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html
一、 Golden Gate 软件的分类
(
1)Golden Gate:包括GoldenGate Capture, Deliver 和Active
Data Guard, XStream
on Oracle DB,并支持各种开放数据系统,是我们通常讲的OGG的概念。
(
2)Golden Gate Director:实际上,在下载的时候,可以发现没有Director的类目了,替换的是一个Golden Gate Management Pack的包,其实这个就是之前的OGG Director。Management Pack是基于浏览器的管理工具包,有限使用WebLogic SE,所以配置MP,需要先安装weblogic。
(
3)Golden Gate Veridata:跨平台比较复制的源库和目标库,为Golden Gate源端和目标端提供数据比对和校验的功能。
-
-
2个不常见:
(
1)Golden Gate
for Mainframe:包括GoldenGate Capture, Deliver
for HP Non
-Stop, IBM DB2
on
Mainframe, plus Syncfile。
(
2)Golden Gate Adapters:对Java、Flat File、Siebel等的接口包。
2. ogg的应用场景:
①.数据迁移;②.数据中心 ③.双活中心
二:OGG的架构:
2.
1 OGG架构与工作原理
在Oracle OGG
12c中,有如下组件:
(
1)
Extract
(
2)
Data pump
(
3)Replicat
(
4)Trails 或
extract files
(
5)Checkpoints
(
6)Manager
(
7)Collector
两条线:
initial
load : 在初始化装载过程中,
Extract 进程直接从源对象中抽取当前的数据。
source
-
-
> target (两种方式:expdp
/rman 基于scn)
change synchronizaton :为了保证源数据和其他对象保持数据的一致,
extract 进程会捕获源对象自初始化同步以后的DML 和DDL 的变化。
expdp 和 rman , expdp可控性好根据情况开并行;
异库: 直接拉数据;(装载和同步分开);
三:OGG的主要进程
①.
Extract 进程: 负责数据的抽取工作;(没有提交之前
extract捕获事物信息,
commit后捕获抽取到trail文件里面;
如果是
rollback,事物操作不用写入到trail文件里面);
如果有一个
user里面有
100个
table,只有一个
extract; 就会出现等待,可以配置
5个
extract,每个同步
20个表;
②.
data dump进程:将队列数据发送到目标
好处: ①.预防网络和源库的故障;
②.可以对数据进行过来和转换;
③.synchronize方式从多个源库上合并数据到一个中心库;
④.synchronize方式将一个源库数据传到多个目标库;
③.Replicat 进程 : Replicate 进程运行在目标系统上,该进程会读取目标端的trail中的文件,并将解析为DML 或者DDL 语句,然后在目标数据库执行。
当仅配置了一个Replicate 进程的时候,可以对该进程配置为coordinated 或者 integrated 模式:
(
1)Coordinated
mode
Coordinated 模式支持所有OGG支持的数据库。 在该模式下,Replicat有一个协调线程,并且协调一个或者多个coordinates thread 并行的执行 replicate的
SQL 操作。
(
2)Integrated
mode: Integrated 模式仅支持
11.
2.
0.
4 之后的Oracle 数据库。
Trails 文件: 按照事物的时间顺序写的。默认是
10M.
哪些进程可以读写 Trail文件?
extract
data pump replicate
trail 文件会在进程需要的时候自动创建,但在使用
add rmttrail 或者 exttrail 命令往OGG的配置中添加trail时,必须指定为trail 文件的名称指定
2个字符。 默认情况下,trails存放在GG 安装目录的dirdat 子目录下。
默认情况下,每个trails的文件是
10M,为了保证进程的正常运行必须不断的创建的新的trail 文件。 这个过程由OGG 自动实现,并且不影响OGG的运行。
每个新生成的文件,文件名都会继承旧trail文件的前
2个字母,然后加上
6个数字,
c:\ggs\dirdat\tr000001
Extract Files : 与 trail 文件相比,少了checkpoints的信息。
checkpoints : 记录
Replicat 进程 : ①. 在 target 端建
checkpoint
table(建议),②. 产生一个checkpoints文件(默认)
为啥
checkpoint
table, 比 checkpoints文件 好?
2T, 库挂掉了,重新恢复,用checkpoins文件是恢复之前的checkpoints
1
-
-
-
-
2
-
-
-
-
3 时间
库恢复到
2时间点,
checkpoint文件记录的是
3的时间点,这是
checkpoint和数据里面的
checkpoint对不上,ogg就不能同步了。
checkpoint
table: 库恢复到
2的时间点,
checkpoint
table里面的当前
checkpoint时间为
2的信息。就可以继续同步。