goldengate使用ASM存放trail文件注意事项

GoldenGate支持从ASM中捕获数据,但如果使用ASM存储重做日志文件和/或者归档日志文件,有一些注意事项。
(1)GoldenGate需要通过监听连接到ASM实例读取日志,所以需要配置监听文件。
(2)为了连接到监听,需要添加连接描述符到tnsnames.ora文件
(3)GoldenGate的 Extract 参数文件必须包括下面的内容:
示例3-5:
TRANLOGOPTIONS ASMUSER <user>@<asm>, ASMPASSWORD <pwd>,ENCRYPTKEY <key>
3.2.3  配置源端数据库
由于GoldenGate的原理是根据Oracle的日志进行抽取复制的,所以Oracle的redo对于GoldenGate非常重要。因为redo会频繁地切换,日志组是有限的,并且是循环使用的。
(1)为了让GoldenGate不丢失任何的日志,需要打开数据库的归档,在数据库mount阶段,使用命令:
示例3-6:
alter database archivelog
打开数据库的归档,如果使用了Flash Recovery Area,系统会自动归档到db_recovery_file_dest。当然也可以使用以下命令手动指定归档路径:
示例3-7:
alter system set log_archive_dest_1=\\\'location=/temp/arch\\\';
然后用命令:
示例3-8:
SQL> archive log list
可以查看数据库是否归档,如图3-27所示。
 

图3-27
(2)GoldenGate需要数据库开启supplemental log。GoldenGate需要准确地知道源端的数据修改了哪些列,需要更为详细的日志,所以需要数据库开启supplemental log。如果没有开启,则根据下面的操作开启,如图3-28所示。
 

图3-28
(3)关闭recyclebin。这个选项是为了支持GoldenGate DDL复制的。关掉recyclebin的操作如图3-29所示。
 

图3-29
(4)在目标端添加checkpoint表。这是为了保证源和目标在传数据的时候不会重复或者少传,添加的步骤为在目标机器上编辑GOLBALS文件,添加一行,checkpoint ggs.checkpoint,然后dblogin数据库,添加checkpoint表,如图3-30和图3-31所示。
 

图3-30
 

图3-31
 
3.3  配置源端进程组
3.3.1  配置MGR进程组
为了编辑和运行GoldenGate,在源端和目标端都必须运行一个MGR进程组,它负责启动GoldenGate进程,启动动态进程,管理trail文件以及错误信息报告等。
创建动态进程组的步骤如下。
进入安装GoldenGate的目录,运行GGSCI程序来打开GoldenGate命令接口,如图3-32所示。
? 在GGSCI,输入edit params mgr命令编辑参数文件。
? 在GGSCI,输入port <port_number>指定管理端口。
? 在GGSCI,还可以配置一些其他的参数,然后输入保存文件。
 

图3-32
1.动态端口参数设置
可以制定最大256个可用端口的动态列表,当指定的端口不可用时,管理进程将会从列表中选择一个可用的端口,源端和目标端的Collector、Replicat、GGSCI进程将会使用这些端口。
指定动态端口的命令:
示例3-9:
DYNAMICPORTLIST {<port> | <port>-<port>} [,…]
参数DYNAMICPORTREASSIGNDELAY <seconds>可以指定多长时间重新制定一次。
2.自动启动参数设置
当管理进程启动的时候使用autostart参数设置Extract和Replicat进程自动启动,也可以使用autostart设置,当Extract和Replicat进程异常终止时来自动启动。
这个功能在网络临时中断、进程异常终止、数据库死锁等情况下比较有用,它会节省大量的工作量,操作如图3-33所示。
 

图3-33
下面为这个命令的格式:
示例3-10:
AUTORESTART {ER | EXTRACT | REPLICAT} {group name | wildcard}
[, RETRIES <max retries>]
[, WAITMINUTES <wait minutes>]
[, RESETMINUTES <reset minutes>]
这里autorestart行表示每2分钟尝试重新启动所有的Extract进程,一共尝试2次(默认entries大小为2,如果需要设置尝试的次数,可以设置entries参数),以后5分钟清零,然后再按照设2分钟尝试一共清理2次。
启动MGR进程,如图3-34所示。
 

图3-34
3.trail文件维护
当GoldenGate应用完成trail文件以后,可以设置定期的自动清理trail文件,释放磁盘空间。在参数文件中使用参数PURGEOLDEXTRACTS,管理进程就会自动定期的清除trail文件。
3.3.2  配置Extract进程组
抽取进程组在源端运行,负责抓取需要传输的数据。
下面为创建一个名为eora的Extract进程组。
(1)edit params eora,然后添加需要的参数内容,如图3-35所示。
 
 

图3-35
(2)在源端用add extract命令创建一个主Extract组(因为测试中已添加,所以这里用alter),如图3-36所示。
 

图3-36
(3)用add exttrail命令创建本地trail文件。主Extract组负责写这部分文件,Pump负责把trail文件从源端投递到目标端(因为测试中已添加,所以这里用alter),如图3-37所示。
 

图3-37
(4)使用GGSCI命令管理Extract。在GGSCI命令中,可以使用add、alter、cheanup、delete、info、kill命令管理Extract进程,如图3-38所示。
 

图3-38
3.3.3  配置Pump进程组
在源端一个数据Pump进程是secondary Extract进程组,前面介绍过,如果没有Pump进程,则需要配置Extract进程把抽取来的数据投递到目标端,但是配置Pump进程的好处是可以保证当网络不稳定的时候,能稳定且没有差错的把数据投递到目标端。
下面为创建一个名为pump_so的Pump进程组。
(1)使用edit params pump_so,添加内容保存即可,如图3-39所示。
 
图3-39
(2)用add extract 指定本地trail文件(因为测试中已添加,所以这里用alter),如图3-40所示。
 

图3-40
(3)用add rmttrail 指定远程trail文件(因为测试中已添加,所以这里用alter),如图3-41所示。
 

图3-41
 
3.4  配置目标端进程
3.4.1  配置目标端MGR进程组
使用edit params mgr编辑mgr参数文件然后保存即可,如图3-42所示。
 

图3-42
这里使用了延迟的预警机制:MGR进程每隔1个小时检查Extract的延迟情况,如果超过了3分钟就把延迟作为信息记录到错误日志中,如果延迟超过了5分钟,则把它作为警告写到错误日志中。
3.4.2  配置目标端Replicat进程组
Replicat进程在目标端运行,它负责读源端投递过来的文件数据,然后把变化应用到目标端,下面来配置Replicat。
(1)使用edit  params命令创建一个名为rep1的参数文件,如图3-43所示。
 

图3-43
(2)在目标端用add replicat添加一个rep1进程(因为测试中已添加,所以这里用  alter),如图3-44所示。
 

图3-44
 
3.5  DML测试
测试按上面的参数配置,是否可以实现数据同步。
(1)首先启动源端的所有需要的进程,如图3-45所示。
 
图3
-45
(2)同样启动目标端的所有进程,如图3-46所示。
 

图3-46
(3)在源端数据库,插入scott.dept一行数据,如图3-47所示。
 

图3-47
(4)在目标端查看,如图3-48所示。
 

图3-48
由此可见上面的配置是成功的。

你可能感兴趣的:(goldengate使用ASM存放trail文件注意事项)