一概述:

三台主机分别安装数据库ORACLE 9.2.6 升级至9.2.0.8.0,gg1为源端,gg2为中间库,.gg3 为目标端,
gg1上配置一个抽取,一个投递,投递进程关联gg2的trail
gg2上分别配置一个复制接受gg1,一个抽取进程,一个投递进程,投递进程关联gg3的trail文件
gg3上配置一个复制进程,gg1,gg2 端要求开启归档,gg3主机可选是否开启归档
每台虚拟机上均要配置MGR管理进程
此次测试的三台虚拟机是克隆的一台虚拟机的快照,克隆后调整每台虚拟机的IP地址,注意还要调整数据库的tnsnames.ora及listener.ora文件
的主机名或ip地址,主机名及ip调整参考ip地址规划

中间库配置了检查点表,源端机目标端未配置检查点表ggs,ckpt




1.1 ip 规划:


[oracle@gg1 admin]$ cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1       localhost.localdomain   localhost
192.168.1.207   gg1.abc.com     gg1
192.168.1.208   gg2.abc.com     gg2
192.168.1.209   gg3.abc.com     gg3

1.2 操作系统版本:


[root@gg1 ~]# uname -rm
2.6.9-78.EL x86_64
[root@gg1 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux AS release 4 (Nahant Update 7)


1.3 数据库版本:




[oracle@gg1 ~]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.8.0 - Production on Mon May 12 01:26:04 2014

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> connect /as sysDBA
Connected.
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
PL/SQL Release 9.2.0.8.0 - Production
CORE    9.2.0.8.0       Production
TNS for Linux: Version 9.2.0.8.0 - Production
NLSRTL Version 9.2.0.8.0 - Production

[oracle@gg1 ggs]$ ggsci -v

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.


备注:oracle 9i 数据库的安装及升级参考其他相关文档,此处不做详细说明

1.4 goldengate 软件版本:

压缩包:V28957-01
goldengate v11.1.1.1.2
ggs_Linux_x64_ora9i_64bit.tar




二 goldengate 软件安装


以下操作无特别说明均是在三台虚拟机上做同样的操作


2.1  创建安装用户

此次测试均采用 oracle 用户安装,为创建单独的goldengate软件安装用户

调整oracle 用户的 .bash_profile 文件添加以下内容


调整前:


[oracle@gg1 ~]$ cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATHHOME/bin

#export PATH
# Oracle 9i
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/9.2.0; export ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$ORACLE_HOME/binPATH; export PATH
ORACLE_OWNER=oracle; export ORACLE_OWNER
ORACLE_SID=orcl; export ORACLE_SID
LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlibORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATHORACLE_HOME/network/jlib; export CLASSPATH
LD_ASSUME_KERNEL=2.4.19; export LD_ASSUME_KERNEL
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
#unset USERNAME



调整后:


设置环境变量主要为下面两行的调整:

export PATH=$PATHORACLE_HOME/bin:/home/oracle/ggs
export LD_LIBRARY_PATH=/home/oracle/ggsORACLE_HOME/lib

调整后的.bash_profile
[oracle@gg1 ~]$ cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATHHOME/bin

#export PATH
# Oracle 9i
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/9.2.0; export ORACLE_HOME
GGHOME=/home/oracle/ggs;export GGHOME
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$ORACLE_HOME/binPATH:/home/oracle/ggs; export PATH
ORACLE_OWNER=oracle; export ORACLE_OWNER
ORACLE_SID=orcl; export ORACLE_SID
LD_LIBRARY_PATH=/home/oracle/ggsORACLE_HOME/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib; export CLASSPATH
LD_ASSUME_KERNEL=2.4.19; export LD_ASSUME_KERNEL
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
#unset USERNAME


2.2 创建goldengate 软件安装目录


[oracle@gg1 ~]$ mkdir ggs
[oracle@gg1 ~]$ pwd
/home/oracle
[oracle@gg1 ~]$ cd ggs
[oracle@gg1 ggs]$ pwd
/home/oracle/ggs


2.3 上传goldengate软件,安装goldengate软件

关闭iptables服务:

[root@gg1 ~]# chkconfig --list | grep iptables
iptables        0ff   1ff   2n    3n    4n    5n    6ff
[root@gg1 ~]# service iptables status
Firewall is stopped.
[root@gg1 ~]# chkconfig iptables off
[root@gg1 ~]# chkconfig --list | grep sendmail
sendmail        0ff   1ff   2ff   3:off   4:off   5:off   6:off

防止相应端口被禁止,熟悉的话也可配置开放相应端口

关闭sendmail服务:

[root@gg1 ~]# service sendmail status
sendmail is stopped
[root@gg1 ~]# chkconfig sendmail off

sendmai 启动时间较长,禁止启动


[root@gg1 ~]# pwd
/root
[root@gg1 ~]# ls -l
total 266848
-rw-r--r--  1 root root      3061 Sep 25  2012 anaconda-ks.cfg
drwxr-xr-x  2 root root      4096 Sep 25  2012 Desktop
-rwxrwxrwx  1 root root 272834560 Oct  4  2011 ggs_Linux_x64_ora9i_64bit.tar
-rw-r--r--  1 root root     72353 Sep 25  2012 install.log
-rw-r--r--  1 root root     44487 Sep 25  2012 install.log.syslog
[root@gg1 ~]# chmod 777 ggs_Linux_x64_ora9i_64bit.tar
[root@gg1 ~]# mv ggs_Linux_x64_ora9i_64bit.tar /home/oracle/ggs/
[root@gg1 ~]# su - oracle
[oracle@gg1 ~]$ cd /home/oracle/ggs
[oracle@gg1 ggs]$ ls -l
total 266708
-rwxrwxrwx  1 root root 272834560 Oct  4  2011 ggs_Linux_x64_ora9i_64bit.tar
[oracle@gg1 ggs]$ tar xf ggs_Linux_x64_ora9i_64bit.tar
[oracle@gg1 ggs]$ pwd
/home/oracle/ggs
[oracle@gg1 ggs]$ ls -l
total 515316
-r--r--r--  1 oracle oinstall       426 Oct 15  2010 bcpfmt.tpl
-r--r--r--  1 oracle oinstall      1725 Oct 15  2010 bcrypt.txt
drwxr-xr-x  2 oracle oinstall      4096 Oct  5  2011 cfg
-r--r--r--  1 oracle oinstall       739 Oct 15  2010 chkpt_ora_create.sql
-rwxr-xr-x  1 oracle oinstall   8196774 Oct  5  2011 cobgen
-rwxr-xr-x  1 oracle oinstall   8138288 Oct  5  2011 convchk
-r--r--r--  1 oracle oinstall       159 Oct 15  2010 db2cntl.tpl
-r--r--r--  1 oracle oinstall      3334 Oct 15  2010 ddl_access.tpl
-r--r--r--  1 oracle oinstall      1059 Oct 15  2010 ddl_cleartrace.sql
-rwxr-xr-x  1 oracle oinstall   8277118 Oct  5  2011 ddlcob
-r--r--r--  1 oracle oinstall      3502 Oct 15  2010 ddl_db2_os390.tpl
-r--r--r--  1 oracle oinstall      3017 Oct 15  2010 ddl_db2.tpl
-r--r--r--  1 oracle oinstall      4189 Oct 15  2010 ddl_ddl2file.sql
-r--r--r--  1 oracle oinstall       746 Oct 15  2010 ddl_disable.sql
。。。。。。。输出较多部分省略。。。。。。。。。。。。


2.4  配置mgr(相应的管理进程端口均为7809),创建goldengate相关目录:

[oracle@gg1 ggs]$ cd $GGHOME
[oracle@gg1 ggs]$ pwd
/home/oracle/ggs
[oracle@gg1 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg1.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     STOPPED                                          


GGSCI (gg1.abc.com) 2> create subdirs

Creating subdirectories under current directory /home/oracle/ggs

Parameter files                /home/oracle/ggs/dirprm: created
Report files                   /home/oracle/ggs/dirrpt: created
Checkpoint files               /home/oracle/ggs/dirchk: created
Process status files           /home/oracle/ggs/dirpcs: created
SQL script files               /home/oracle/ggs/dirsql: created
Database definitions files     /home/oracle/ggs/dirdef: created
Extract data files             /home/oracle/ggs/dirdat: created
Temporary files                /home/oracle/ggs/dirtmp: created
Veridata files                 /home/oracle/ggs/dirver: created
Veridata Lock files            /home/oracle/ggs/dirver/lock: created
Veridata Out-Of-Sync files     /home/oracle/ggs/dirver/oos: created
Veridata Out-Of-Sync XML files /home/oracle/ggs/dirver/oosxml: created
Veridata Parameter files       /home/oracle/ggs/dirver/params: created
Veridata Report files          /home/oracle/ggs/dirver/report: created
Veridata Status files          /home/oracle/ggs/dirver/status: created
Veridata Trace files           /home/oracle/ggs/dirver/trace: created
Stdout files                   /home/oracle/ggs/dirout: created


GGSCI (gg1.abc.com) 3> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     STOPPED                                          


GGSCI (gg1.abc.com) 4> edit params mgr


port 7809
~

"dirprm/mgr.prm" [New] 1L, 10C written


GGSCI (gg1.abc.com) 5> view report mgr
ERROR: REPORT file MGR does not exist.


GGSCI (gg1.abc.com) 6> view params mgr

port 7809


GGSCI (gg1.abc.com) 7> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     STOPPED                                          


GGSCI (gg1.abc.com) 8> start mgr

Manager started.


GGSCI (gg1.abc.com) 9> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          


确认gg1,gg2,gg3三台虚拟机上状态均同上
---2.1至2.4操作均在三台虚拟机上操作




2.5 源端(gg1,gg2)及目标端(gg3)数据库参数调整


源端(gg1,gg2)配置
.oracle数据库设置
SQL> create user ggs identified by ggs account unlock;
SQL> grant dba to ggs
【如果对权限有要求,如没要求,一般就给dba权限,详细权限为:
SQL> GRANT create table to ggs;
SQL> GRANT CONNECT TO ggs;
SQL> GRANT ALTER ANY TABLE TO ggs;
SQL> GRANT ALTER SESSION TO ggs;
SQL> GRANT CREATE SESSION TO ggs;
SQL> GRANT FLASHBACK ANY TABLE TO ggs;
SQL> GRANT SELECT ANY DICTIONARY TO ggs;
SQL> GRANT SELECT ANY TABLE TO ggs;
SQL> GRANT RESOURCE” TO ggs;
SQL> GRANT DELETE ANY TABLE TO ggs;
SQL> GRANT INSERT ANY TABLE TO ggs;
SQL> GRANT UPDATE ANY TABLE TO ggs;
SQL> GRANT RESTRICTED SESSION TO ggs; 】
将数据库设置为归档模式:
SQL> alter database archivelog(在mount 状态下执行)
修改归档模式参数
SQL> archive log list(查看归档状态)
检查源端数据库的附加日志是否打开:
SQL> select supplemental_log_data_min from v$database;
将附加日志打开:
SQL> alter database add supplemental log data;
切换日志使附加日志生效:
SQL> alter system archive log current;
关闭回收站:
SQL> alter system set recyclebin=off scope=spfile;
oracle 9i 无回收站,此部略


复制测试用户为scott,建库是已安装此样板数据库 :
解锁测试用户,并赋予想要的权限,简单起见赋予DBA权限,命令如下:
********************************************************
alter user scott identifieg by scott account unlock;
grant dba to scott;
********************************************************
上述两条命令在gg1,gg2,gg3上均作同样的操作。

目标端gg3配置:

oracle数据库设置
SQL> create user ggs identified by ggs account unlock;
SQL> grant dba to ggs
本次测试目标端未开启归档,未启用附加日志






2.6 源端gg1配置
配置抽取进程
gg1启用对象级别附加日志

[oracle@gg1 ~]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.8.0 - Production on Mon May 12 03:34:46 2014

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> connect scott/scott
Connected.




SQL> select tname from tab;

TNAME
------------------------------
BONUS
DEPT
EMP
SALGRADE


[oracle@gg1 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg1.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          


GGSCI (gg1.abc.com) 2> dblogin userid ggs,password ggs
Successfully logged into database.

GGSCI (gg1.abc.com) 3> add trandata scott.bonus

2014-05-12 03:39:48  WARNING OGG-00869  No unique key is defined for table BONUS. All viable columns will be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the key.

Logging of supplemental redo data enabled for table SCOTT.BONUS.

GGSCI (gg1.abc.com) 4> add trandata scott.dept

Logging of supplemental redo data enabled for table SCOTT.DEPT.

GGSCI (gg1.abc.com) 5> add trandata scott.emp

Logging of supplemental redo data enabled for table SCOTT.EMP.


GGSCI (gg1.abc.com) 7> add trandata scott.salgrade

2014-05-12 03:40:28  WARNING OGG-00869  No unique key is defined for table SALGRADE. All viable columns will be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the key.

Logging of supplemental redo data enabled for table SCOTT.SALGRADE.




GGSCI (gg1.abc.com) 8> edit params ext_my


extract ext_my
dynamicresolution
userid ggs,password ggs
exttrail /home/oracle/ggs/dirdat/my
table scott.*;

"dirprm/ext_my.prm" [New] 5L, 108C written


GGSCI (gg1.abc.com) 9> view params ext_my

extract ext_my
dynamicresolution
userid ggs,password ggs
exttrail /home/oracle/ggs/dirdat/my
table scott.*;


GGSCI (gg1.abc.com) 10> add extract ext_my,tranlog,begin now
EXTRACT added.


GGSCI (gg1.abc.com) 11> add exttrail /home/oracle/ggs/dirdat/my,extract ext_my
EXTTRAIL added.


GGSCI (gg1.abc.com) 12> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:00:19   



源端gg1配置泵取进程


源端增加一个推送进程:
GGSCI (gg1.abc.com) 13> edit params pm_my1


extract pm_my1
passthru
dynamicresolution
userid ggs,password ggs
rmthost 192.168.1.208,mgrport 7809
rmttrail /home/oracle/ggs/dirdat/s1
table scott.*;
~
"dirprm/pm_my1.prm" [New] 7L, 152C written


GGSCI (gg1.abc.com) 14> view params pm_my1

extract pm_my1
passthru
dynamicresolution
userid ggs,password ggs
rmthost 192.168.1.208,mgrport 7809
rmttrail /home/oracle/ggs/dirdat/s1
table scott.*;



添加推送进程读取的本地TRAIL文件:
GGSCI (gg1.abc.com) 15> add extract pm_my1,exttrailsource /home/oracle/ggs/dirdat/my
EXTRACT added.
添加推送进程发送到远端的trail目录:
GGSCI (gg1.abc.com) 16> add rmttrail /home/oracle/ggs/dirdat/s1,extract pm_my1
RMTTRAIL added.

查看:

GGSCI (gg1.abc.com) 17> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:08:15   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:01:44   



可以看到源端管理进程、抽取进程、泵取进程pm_my1、以配置完成,但未启动,

















下面开始
两个目标端测试用户的实例化


2.8 源端测试用户及目标端测试用户的实例化

实例化方式1:
本次测试的两个目标端及源端均是同一虚拟机克隆的快照,克隆前的虚拟机以安装数据库,并建立数据库测试用户,故
三个数据库的用户SCOTT的表对象处于一致的状态,可省略初始化过程


实例化方式2:
exp/imp 方式实例化


Example 2: schema export using exp
Enable Minimal Supplemental Logging in Oracle on source
SQLPLUS > alter database add supplemental log data;
Enable Supplemental Logging at Table Level on source
GGSCI> dblogin userid xxxxx password xxxxxx
GGSCI> add trandata <schema>.<tablename>
Add Extract, Add ExtTrail FileTrail File, Add Pump, Add RmtTrail FileTrail File on source

Start Extract, Start Pump on source
Get the current SCN on the source database:
SQLPLUS> select current_scn from v$database ;
CURRENT_SCN
-----------------------28318029
Get a flashback snapshot from the SCN that you obtained in the previous step. You can do this with
exp or expdp utility. The following example shows the use of export utility (exp):
>exp <username>/<password> owner=<schema_name> grants=n statistics=none triggers=n
compress=n FLASHBACK_SCN=28318029
Note: Undo_retention has to be set high enough, and the export log needs to be checked for errors.
You can speed up exp by running multiple session in parallel but you have to manually configure
subsets of the data you want to export (e.g. different tables for different export files). Make sure to use
the same FLASHBACK_SCN for all export sessions to ensure taking a read consistent backup.
Start an import to the target database when export is complete.
Add and Start Replicat:
GGSCI> add replicat <rename>, exttrail ./dirdat/<xx>
GGSCI> start replicat <rename>, aftercsn <SCN value returned from query on source>





2.9.1 中间库端配置复制进程rep_s1,此进程应用gg1投递进程的rmttrail

gg2启用对象级别附加日志

[oracle@gg2 ~]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.8.0 - Production on Mon May 12 03:34:46 2014

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> connect scott/scott
Connected.




SQL> select tname from tab;

TNAME
------------------------------
BONUS
DEPT
EMP
SALGRADE


[oracle@gg2 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg2.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          


GGSCI (gg2.abc.com) 2> dblogin userid ggs,password ggs
Successfully logged into database.

GGSCI (gg2.abc.com) 3> add trandata scott.bonus

2014-05-12 03:39:48  WARNING OGG-00869  No unique key is defined for table BONUS. All viable columns will be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the key.

Logging of supplemental redo data enabled for table SCOTT.BONUS.

GGSCI (gg2.abc.com) 4> add trandata scott.dept

Logging of supplemental redo data enabled for table SCOTT.DEPT.

GGSCI (gg2.abc.com) 5> add trandata scott.emp

Logging of supplemental redo data enabled for table SCOTT.EMP.


GGSCI (gg2.abc.com) 7> add trandata scott.salgrade

2014-05-12 03:40:28  WARNING OGG-00869  No unique key is defined for table SALGRADE. All viable columns will be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the key.

Logging of supplemental redo data enabled for table SCOTT.SALGRADE.

gg2:

[oracle@gg2 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg2.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING      



中间库添加检查点表


GGSCI (gg2.abc.com) 9> edit params ./GLOBALS


checkpointtable ggs.ckpt
~
~
"./GLOBALS" [New] 1L, 25C written


GGSCI (gg2.abc.com) 10> view params ./GLOBALS

checkpointtable ggs.ckpt


GGSCI (gg2.abc.com) 11> dblogin userid ggs,password ggs
Successfully logged into database.

GGSCI (gg2.abc.com) 12> add checkpointtable ggs.ckpt

Successfully created checkpoint table GGS.CKPT.                                

配置rep_s1:


GGSCI (gg2.abc.com) 2> dblogin userid ggs,password ggs
Successfully logged into database.

GGSCI (gg2.abc.com) 3> edit params rep_s1


replicat rep_s1
userid ggs, password ggs
handlecollisons
assumetargetdefs
map scott.*, target scott.*;

"dirprm/rep.prm" [New] 5L, 100C written


GGSCI (gg2.abc.com) 4> view params rep_s1

replicat rep_s1
userid ggs, password ggs
handlecollisions
assumetargetdefs
map scott.*, target scott.*;


GGSCI (gg2.abc.com) 5> dblogin userid ggs,password ggs
Successfully logged into database.




GGSCI (gg2.abc.com) 7> add replicat rep_s1, checkpointtable ggs.ckpt, exttrail /home/oracle/ggs/dirdat/s1
REPLICAT added.


GGSCI (gg2.abc.com) 8> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    STOPPED     REP         00:00:00      00:00:06


2.9.2 中间库服务器配置抽取进程及投递进程,抽取本地数据变化,并发送到目标库端

中间库配置抽取进程





GGSCI (gg2.abc.com) 8> edit params ext_my


extract ext_my
dynamicresolution
userid ggs,password ggs
exttrail /home/oracle/ggs/dirdat/my
ignoreapplops,getreplicates
table scott.*;

"dirprm/ext_my.prm" [New] 5L, 108C written


GGSCI (gg2.abc.com) 9> view params ext_my

extract ext_my
dynamicresolution
userid ggs,password ggs
exttrail /home/oracle/ggs/dirdat/my
ignoreapplops,getreplicates
table scott.*;

###ignoreapplops,getreplicates 参数表示忽略中间库应用对数据的修改,中间库Extract进程只抽取Replicat进程产生的修改

GGSCI (gg2.abc.com) 10> add extract ext_my,tranlog,begin now
EXTRACT added.


GGSCI (gg2.abc.com) 11> add exttrail /home/oracle/ggs/dirdat/my,extract ext_my
EXTTRAIL added.


GGSCI (gg2.abc.com) 12> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:00:19   



中间库gg2配置泵取进程


源端增加一个推送进程:
GGSCI (gg2.abc.com) 13> edit params pm_my1


extract pm_my1
passthru
dynamicresolution
userid ggs,password ggs
rmthost 192.168.1.209,mgrport 7809
rmttrail /home/oracle/ggs/dirdat/s1
table scott.*;
~
"dirprm/pm_my1.prm" [New] 7L, 152C written


GGSCI (gg1.abc.com) 14> view params pm_my1

extract pm_my1
passthru
dynamicresolution
userid ggs,password ggs
rmthost 192.168.1.209,mgrport 7809
rmttrail /home/oracle/ggs/dirdat/s1
table scott.*;



添加推送进程读取的本地TRAIL文件:
GGSCI (gg1.abc.com) 15> add extract pm_my1,exttrailsource /home/oracle/ggs/dirdat/my
EXTRACT added.
添加推送进程发送到远端的trail目录:
GGSCI (gg1.abc.com) 16> add rmttrail /home/oracle/ggs/dirdat/s1,extract pm_my1
RMTTRAIL added.

查看:

GGSCI (gg1.abc.com) 17> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:08:15   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:01:44   



可以看到源端管理进程、复制进程、抽取进程、泵取进程pm_my1、以配置完成,但未启动,





3.0  目标端gg3配置复制进程

[oracle@gg2 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg2.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          

配置rep_s1:


GGSCI (gg3.abc.com) 2> dblogin userid ggs,password ggs
Successfully logged into database.

GGSCI (gg3.abc.com) 3> edit params rep_s1


replicat rep_s1
userid ggs, password ggs
handlecollisons
assumetargetdefs
map scott.*, target scott.*;

"dirprm/rep.prm" [New] 5L, 100C written


GGSCI (gg3.abc.com) 4> view params rep_s1

replicat rep_s1
userid ggs, password ggs
handlecollisions
assumetargetdefs
map scott.*, target scott.*;


GGSCI (gg3.abc.com) 5> dblogin userid ggs,password ggs
Successfully logged into database.




GGSCI (gg3.abc.com) 7> add replicat rep_s1, nodbcheckpoint, exttrail /home/oracle/ggs/dirdat/s1
REPLICAT added.


GGSCI (gg3.abc.com) 8> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    STOPPED     REP         00:00:00      00:00:06










3.1 测试源端及目标端数据是否同步


GGSCI (gg1.abc.com) 16> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:08:39   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:07:43   


GGSCI (gg1.abc.com) 17> start ext_my

Sending START request to MANAGER ...
EXTRACT EXT_MY starting


GGSCI (gg1.abc.com) 18> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     EXT_MY      00:08:50      00:00:00   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:07:54   


GGSCI (gg1.abc.com) 19> start pm_my1

Sending START request to MANAGER ...
EXTRACT PM_MY1 starting


GGSCI (gg1.abc.com) 20> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     EXT_MY      00:08:50      00:00:06   
EXTRACT     RUNNING     PM_MY1      00:00:00      00:08:00   


gg2:



GGSCI (gg2.abc.com) 25> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:02:51   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:01:50   
REPLICAT    STOPPED     REP_S1      00:00:00      00:03:40   


GGSCI (gg2.abc.com) 26> start rep_s1

Sending START request to MANAGER ...
REPLICAT REP_S1 starting


GGSCI (gg2.abc.com) 27> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     STOPPED     EXT_MY      00:00:00      00:03:26   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:02:25   
REPLICAT    RUNNING     REP_S1      00:00:00      00:00:02   


GGSCI (gg2.abc.com) 28> strart ext_my
ERROR: Invalid command.

GGSCI (gg2.abc.com) 29> start ext_my

Sending START request to MANAGER ...
EXTRACT EXT_MY starting


GGSCI (gg2.abc.com) 30> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     EXT_MY      00:00:00      00:03:42   
EXTRACT     STOPPED     PM_MY1      00:00:00      00:02:41   
REPLICAT    RUNNING     REP_S1      00:00:00      00:00:09   


GGSCI (gg2.abc.com) 31> start pm_my1

Sending START request to MANAGER ...
EXTRACT PM_MY1 starting


GGSCI (gg2.abc.com) 32> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     EXT_MY      00:03:44      00:00:06   
EXTRACT     RUNNING     PM_MY1      00:00:00      00:02:49   
REPLICAT    RUNNING     REP_S1      00:00:00      00:00:06   


gg3:


GGSCI (gg3.abc.com) 6> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    STOPPED     REP_S1      00:00:00      00:00:10   


GGSCI (gg3.abc.com) 7> start rep_s1

Sending START request to MANAGER ...
REPLICAT REP_S1 starting


GGSCI (gg3.abc.com) 8> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    RUNNING     REP_S1      00:00:00      00:00:02   




测试:



[oracle@gg1 ggs]$  sqlplus scott/scott

SQL*Plus: Release 9.2.0.8.0 - Production on Wed May 14 23:39:31 2014

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production

SQL> select count(*) from emp;

  COUNT(*)
----------
        14

SQL> select distinct empno from emp;

     EMPNO
----------
      7369
      7499
      7521
      7566
      7654
      7698
      7782
      7788
      7839
      7844
      7876

     EMPNO
----------
      7900
      7902
      7934

14 rows selected.

SQL> delete from emp where empno=7934;

1 row deleted.

SQL> commit;

Commit complete.

SQL>



目标端gg3:


[oracle@gg3 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg3.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
REPLICAT    RUNNING     REP_S1      00:00:00      00:00:00   


GGSCI (gg3.abc.com) 2> stats rep_s1

Sending STATS request to REPLICAT REP_S1 ...

Start of Statistics at 2014-05-14 23:41:44.

Replicating from SCOTT.EMP to SCOTT.EMP:

*** Total statistics since 2014-05-14 23:41:30 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Daily statistics since 2014-05-14 23:41:30 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Hourly statistics since 2014-05-14 23:41:30 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Latest statistics since 2014-05-14 23:41:30 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

End of Statistics.


GGSCI (gg3.abc.com) 3> exit
[oracle@gg3 ggs]$ sqlplus scott/scott

SQL*Plus: Release 9.2.0.8.0 - Production on Wed May 14 23:41:59 2014

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production

SQL> select count(*) from emp;

  COUNT(*)
----------
        13

SQL>





查看中间库:




[oracle@gg2 ggs]$ sqlplus scott/scott

SQL*Plus: Release 9.2.0.8.0 - Production on Wed May 14 23:43:39 2014

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production

SQL> select count(*) from emp;

  COUNT(*)
----------
        13

SQL> exit
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production
[oracle@gg2 ggs]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 9i on Oct  4 2011 23:49:32

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.



GGSCI (gg2.abc.com) 1> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                          
EXTRACT     RUNNING     EXT_MY      00:00:00      00:00:01   
EXTRACT     RUNNING     PM_MY1      00:00:00      00:00:01   
REPLICAT    RUNNING     REP_S1      00:00:00      00:00:05   


GGSCI (gg2.abc.com) 2> stats ext_my

Sending STATS request to EXTRACT EXT_MY ...

Start of Statistics at 2014-05-14 23:44:00.

Output to /home/oracle/ggs/dirdat/my:

Extracting from SCOTT.EMP to SCOTT.EMP:

*** Total statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Daily statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Hourly statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Latest statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

End of Statistics.


GGSCI (gg2.abc.com) 3> stats PM_MY1

Sending STATS request to EXTRACT PM_MY1 ...

Start of Statistics at 2014-05-14 23:44:11.

Output to /home/oracle/ggs/dirdat/s1:

Extracting from SCOTT.EMP to SCOTT.EMP:

*** Total statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Daily statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Hourly statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Latest statistics since 2014-05-14 23:41:27 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

End of Statistics.


GGSCI (gg2.abc.com) 4> stats REP_S1

Sending STATS request to REPLICAT REP_S1 ...

Start of Statistics at 2014-05-14 23:44:19.

Replicating from SCOTT.EMP to SCOTT.EMP:

*** Total statistics since 2014-05-14 23:41:25 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Daily statistics since 2014-05-14 23:41:25 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Hourly statistics since 2014-05-14 23:41:25 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

*** Latest statistics since 2014-05-14 23:41:25 ***
        Total inserts                                0.00
        Total updates                                0.00
        Total deletes                                1.00
        Total discards                               0.00
        Total operations                             1.00

End of Statistics.


GGSCI (gg2.abc.com) 5>






标签: 暂无标签
dongxujian

写了 86 篇文章,拥有财富 384,被 13 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

成为第一个吐槽的人

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈