初探ORACLE GOLDENDATE 配置

  oracle旗下的GOLDENDATE是用来做数据容灾的一个软件俗称OGG,当然也可以用来支持热备份数据库,和跨平台跨数据库的数据迁移,具体的了解可以通过自行百度。他的概念不是我要在这写的。

  • 准备工作

  1. 下载OGG介质并且解压缩安装,修改oracle用户环境变量(因为比较简单就不在这赘述了,如果不会,可自行百度)。

  2. 因为它主要是基于数据库日志的,所以建议最好开启数据库的归档。并且开启数据库的附加日志,以便更准确的捕获数据库的DML操作。

  3. 源端数据库和目标端数据库都要建立关于OGG同步的用户。


  • 源端OGG配置

1.配置mgr进程,mgr为ogg的守护进程

用oracle用户执行ggsci命令,进入OGG

然后执行如下编辑

GGSCI (oracle1) 2> edit params mgr

PORT 7809

dynamicportlist 7800-8000 (动态端口设置,OGG可以定制最大256个端口,当指定的端口不可用,管理进程将从列表中选择一个端口,源端和目标的发送接受进程都会使用这些端口)

autorestart extract *,retries 2,waitminutes 2,resetminutes 5

(这个代表一共尝试启动两次,以后5分钟清零,然后在按照2分钟尝试,一共启动2次)

启动 mgr进程

GGSCI (oracle1) 3>start mgr



2.配置Extract(抽取进程)

抽取进程组是在源端运行,负责抓取需要传输的数据

GGSCI (oracle1) 5>edit params eora (创建一个名为eora的抽取进程)

extract eora

dynamicresolution

userid ogg,password ogg (OGG用户名和密码)

exttrail /u01/app/OGG_11C/dirdat/et (trail文件的存放路径)

table scott.*; (要同步的表,*代表该模式下所有的表)


在源端添加刚才配置好的抽取进程

GGSCI (oracle1) 8> add extract eora,tranlog,begin now


在源端添加tail文件的路径

GGSCI (oracle1) 3>add exttrail /u01/app/OGG_11G/dirdat/et,extract eora 

EXTTRAIL added.


启动 extract

GGSCI (oracle1) 4> start extract eora


3、配置源端Pump进程(发送进程)

GGSCI (oracle1) 5> edit params pump_so

extract pump_so

dynamicresoulution

passthru

rmhost 192.168.230.129,mgrport 7809,compress (远程的ip和管理端口)

rmttrail /u01/app/ogg_11G/dirdat/pt (远程tail文件的路径)

table scott.*;

spacer.gif

GGSCI (oracle1) 6> add extract pump_so,exttrailsource /u01/app/OGG_11G/dirdat/et

EXTRACT added.


spacer.gif

GGSCI (oracle1) 7> add rmttrail  /u01/app/ogg_11G/dirdat/pt,extract pump_so

RMTTRAIL added.

启动发送进程

GGSCI (oracle1)8>start pump_so


4、可以通过 info all 来查看刚才配置的情况,以及是否都在工作


  • 目标ogg程序配置


1、配置目标的MRG(管理进程)

[oracle@oracle2 OGG]$ ggsci

GGSCI (oracle2) 2> edit params mgr (名字为mgr)

PORT 7809

dynamicportlist 7800-8000 (动态端口设置,OGG可以定制最大256个端口,当指定的端口不可用,管理进程将从列表中选择一个端口,源端和目标的发送接受进程都会使用这些端口)

autostart er *

autostart extract *,waitminutes 2,retries 5 (这个代表一共尝试启动两次,以后5分钟清零,然后在按照2分钟尝试,一共启动2次)

lagreporthours 1 (MGR每隔1小时检查一次extract延迟情况)

laginfominutes 3 (如果超过三分钟就把他作为延迟信息记录到错误日志中)

lagcriticalminutes 5 (如果超过5分钟,则把他作为警告写到错误日志中)

purgeoldextracts /u01/app/ogg_11g/rt*,usecheckpotints,minkeepdays 3 (自动清理tail文件,只保留三天)



启动 mgr进程

GGSCI (oracle2) 3>start mgr




2. 添加检查表

说明: 当我们在GLOBALS 文件里指定了默认的checkpoint 之后,新的Replicat groups 在创建时会自动使用这个参数,不需要其他指令

1) 编辑全局配置文件

edit params ./GLOBALS 
CHECKPOINTTABLE ogg.checkpoint

2)exit # 这里需要退出ggsci终端 

3) 添加checkpoint表

./ggsci  

GGSCI (slave) 1> dblogin userid ogg,password ogg 
Successfully logged into database.

GGSCI (slave) 2> add checkpointtable ogg.checkpoint 
Successfully created checkpoint table OGG.CHECKPOINT.

添加完成后,可以在数据里看到两个CHECK开头的表


SQL> select tname from tab;  
TNAME  
-------------------------------------  
CHECKPOINT                     TABLE 
CHECKPOINT_LOX                 TABLE

select * from checkpoint;

注1:ogg_11.1.1.1.2只有CHECKPOINT一张表。 
注2:ogg_11.2.x.x.1有CHECKPOINT,CHECKPOINT_LOX两张表。



3、配置目标的Replicat(装载进程)


GGSCI (oracle2) 3> edit params repl

replicat repl

userid ogg,password ogg

assumtargetdefs

reperror default,discard

discardrdfile /u01/app/ogg_11g/dirrpt/rep1.dsc, append, megabytes 50

dynamicresolution

map scott.*,target scott.*;


在目标端添加一个 replicat进程

GGSCI (oracle2 as ogg@oracle2) 6> add replicat relp,exttrail  /u01/app/OGG/dirdat/pt,checkpointtable ogg.CHECKPOINT
REPLICAT added.

启动 装载进程

GGSCI (oracle2 as ogg@oracle2) 7>start repl


四、 正常数据测试

随便修改一个scott表里的数据,然后看目标数据库与之对应的数据即可。

可以通过 view report 进程名 命令和stats 进程名 两个命令来查看数据同步情况。




spacer.gif


你可能感兴趣的:(oracle,GOLDENDATE;OGG)