goldengate for win2003 DML单向复制

环境:

SourceDB:
ip:192.168.6.20
hostname:ogg1
gg home c:\gg\

TargetDB:
ip:192.168.6.10
hostname:ogg2
gg home c:\gg\

1.SourceDB配置
1.1 修改归档及日志模式:
 

  
  
  
  
  1. SQL> select LOG_MODE,SUPPLEMENTAL_LOG_DATA_MIN,FORCE_LOGGING  from v$database;  
  2.  
  3. LOG_MODE     SUPPLEME FOR 
  4. ------------ -------- ---  
  5. NOARCHIVELOG   NO       NO 

a)修改归档:
 

  
  
  
  
  1. shutdown immediate;  
  2. startup mount;  
  3. alter database archivelog;  
  4. alter database open

b)开启最小附加日志模式:
alter database add supplemental log data;

c)开启强制日志模式:
alter database force logging;

1.2 关闭recyblebin: 

  
  
  
  
  1. SQL> show parameter recyclebin;  
  2.  
  3. NAME                                 TYPE        VALUE  
  4. ------------------------------------ ----------- ------  
  5. recyclebin                           string      on 
  6.  
  7. alter system set recyclebin=off scope=spfile;  
  8. purge recyclebin  

1.3 创建gg目录: 

  
  
  
  
  1. C:\ggs>install addservice addevents  
  2.  C:\ggs>ggsci  
  3.  GGSCI (ogg1) 1> create subdirs  
  4.  Creating subdirectories under current directory C:\gg  
  5.  
  6. Parameter files                C:\gg\dirprm: created  
  7. Report files                   C:\gg\dirrpt: created  
  8. Checkpoint files               C:\gg\dirchk: created  
  9. Process status files           C:\gg\dirpcs: created  
  10. SQL script files               C:\gg\dirsql: created  
  11. Database definitions files     C:\gg\dirdef: created  
  12. Extract data files             C:\gg\dirdat: created  
  13. Temporary files                C:\gg\dirtmp: created  
  14. Veridata files                 C:\gg\dirver: created  
  15. Veridata Lock files            C:\gg\dirver\lock: created  
  16. Veridata Out-Of-Sync files     C:\gg\dirver\oos: created  
  17. Veridata Out-Of-Sync XML files C:\gg\dirver\oosxml: created  
  18. Veridata Parameter files       C:\gg\dirver\params: created  
  19. Veridata Report files          C:\gg\dirver\report: created  
  20. Veridata Status files          C:\gg\dirver\status: created  
  21. Veridata Trace files           C:\gg\dirver\trace: created  
  22. Stdout files                   C:\gg\dirout: created 


1.4 创建用户(源端及目标端均要执行): 

  
  
  
  
  1. SQL>create user  ggs identified by ggs default tablespace users temporary tablespace temp;  
  2. SQL>grant connect,resource,dba,unlimited tablespace to ggs; 

1.5 开启表级supplemental logging  

  
  
  
  
  1. GGSCI (ogg1) 1> dblogin userid ggs password ggs   
  2. GGSCI (ogg1) 2> add trandata ggs.* 

1.6 配置mgr(源端及目标端均要执行): 

  
  
  
  
  1. GGSCI (ogg1)  3> edit param mgr  
  2. port 7809  
  3. GGSCI (ogg1)  4> start mgr 

1.7 配置源端复制队列 

  
  
  
  
  1. GGSCI (ogg1)   5> add extract ext1,tranlog,begin now   
  2. GGSCI (ogg1)   6>add rmttrail C:\gg\dirdat\lt extract ext1  
  3. GGSCI (ogg1)   7> edit param ext1  
  4. extract ext1  
  5. userid ggs,password ggs  
  6. rmthost 192.168.6.20, mgrport 7809  
  7. rmttrail c:\gg\dirdat\lt  
  8. dynamicresolution  
  9. gettruncates  
  10. table ggs.*; 

参数说明: 

  
  
  
  
  1. extract ext1   --抽取进程名为ext1         
  2.  userid ggs,password ggs  --连接SourceDB的账号密码  
  3.  rmthost 192.168.6.20, mgrport 7809    --远程主机地址及服务端口(TargetDB)  
  4.  rmttrail c:\gg\dirdat\lt  --远程队列的位置(TargetDB)  
  5.  dynamicresolution  --优化参数,动态分析表结构  
  6.  gettruncates   --是否抓取Truncate的数据  
  7.  table ggs.*;    --配置抽取的table 
 
  
  
  
  
  1. GGSCI (ogg1)  8> start ext1  
  2. GGSCI (ogg1)  9> info all  
  3. Program     Status      Group       Lag           Time Since Chkpt  
  4. MANAGER     RUNNING  
  5. EXTRACT        RUNNING     EXT1        00:00:00      00:00:39 

ABENDED 或 STOPPED 请查看c:\gg\ggserr.log

2.TargetDB配置:
2.1配置目标端同步队列: 

  
  
  
  
  1. GGSCI (ogg2) 2> ADD replicat rep1 EXTTRAIL c:\gg\dirdat\lt,nodbcheckpoint  
  2. GGSCI (ogg2) 3> edit param rep1 

 输入如下内容: 

  
  
  
  
  1. replicat rep1  
  2. userid ggs,password ggs  
  3. assumetargetdefs  
  4. reperror default,discard  
  5. discardfile c:\gg\rep1_dis.log,append,megabytes 100  
  6. map ggs.*, target ggs.*;  

参数说明: 

  
  
  
  
  1. replicat rep1     --复制进程名称         
  2. userid ggs,password ggs    --登陆targetDB的账号密码  
  3. assumetargetdefs     --两侧DB数据结构一致则使用此参数  
  4. reperror default,discard    --复制出错,则继续,错误放进discardfile中  
  5. discardfile c:\gg\rep1_dis.log,append,megabytes 100  --以追加模式将错误信息写入rep1_dis.log文件,最大100m   
  6. map ggs.*, target ggs.*;    --源表与目标表对应  
  
  
  
  
  1. GGSCI (ogg2) 4> start mgr   
  2. GGSCI (ogg2) 5> start rep1   
  3. GGSCI (ogg2) 6> info all  
  4.  Program     Status      Group       Lag           Time Since Chkpt  
  5.  MANAGER     RUNNING  
  6.  REPLICAT       RUNNING     REP1        00:00:00      92:06:53 


此时使用ggs用户登录后新建一张表(两边均需要操作):
SQL> create table tab_emp (id number primary key,name varchar2(10));
SourceDB 进行删除updater,insert,delete操作,查看targetDB的变化。

你可能感兴趣的:(goldengate)