(一)源端和目标端新增加复制表
根据需求将生产库中PROCESS_LOG表通过ogg同步到测试库中:
操作步骤:
当GoldenGate仅打开DML复制时,源端增加复制表:在GoldenGate的进程参数中,如果通过*来匹配所有表,因此只要符合*所匹配的条件,那么只要在源端
建立表之后GoldenGate就能自动复制,无需修改配置文件,但是需要为新增的表添加附加日志:
GGSCI 1> dblogin userid GoldenGate,password xxxx
GGSCI >info trandata
GGSCI >add trandata
如果没有使用通配符,则需要在主Extract、Data Pump进程加入复制表
1.源端停止抽取进程、传输进程;目标端停止复制进程
source:
GGSCI (prod) > stop EXT
GGSCI (prod) > stop PUMP
target:
GGSCI (prod) > stop REPLICATION
2、修改抽取进程、传输进程配置,新增表同步
source:
GGSCI (prod) >edit params EXT
table SCOTT.T_OFFLINE;
GGSCI (prod) >edit params PUMP
table SCOTT.T_OFFLINE;
3、源端增加表附加日志,并启动抽取、传输进程
GGSCI (prod) >dblogin userid ogg, password ogg
GGSCI (prod) >add trandata SCOTT.T_OFFLINE
GGSCI (prod) >start EXT
GGSCI (prod) >start PUMP
4. 生产库上查询当前的scn,并根据scn用数据泵导出PROCESS_LOG表数据
SQL> col scn for 999999999999999999999999999999
SQL> select dbms_flashback.GET_SYSTEM_CHANGE_NUMBER scn from dual;
SCN
-------------------------------
11671221581
expdp system/xxx TABLES=SCOTT.T_OFFLINE directory=DATA_PUMP dumpfile =OPERATION_`date +"%Y%m%d%H%M%S"`.dmp logfile=OPERATION_`date +"%Y%m%d%H%M%S"`_exp.log FLASHBACK_SCN=11546563352
5. 在测试库上将生产库导出的PROCESS_LOG数据导入
impdp elon/xxxxxx directory=DATA_PUMP_DIR dumpfile=OPERATION_20180914114027.dmp remap_schema=OPERATION:OPERATION2 remap_tablespace=GUIDO_DATA01:SCOTT_DATA01,GUIDO_IDX01:SCOTT_IDX01,GUIDO_TEMP:SCOTT_TEMP
6. 修改测试库上复制进程参数文件:
map SCOTT.T_OFFLINE, target SCOTT.T_OFFLINE,filter(@GETENV('transaction','csn')>11671221581);#11671221581为生产库查到的scn
7. 启动测试库上复制进程
GGSCI (prod) >start REPLICATION
8. 检查
(二)对于ogg同步的表,表结构进行修改
如果没有配置DDL复制,需要在源和目标,对该表都需要修改。然后重新添加该表的附加日志
GGSCI (db) 1> dblogin userid ogg,password ogg
Successfully logged into database.
GGSCI (db as ogg@db) 2>delete trandata scott.emp
GGSCI (db as ogg@db) 2>add trandata scott.emp
GGSCI (db as ogg@db) 2>info trandata scott.emp
监控视图:dba_log_group_columns、dba_log_groups
手机扫一扫
移动阅读更方便
你可能感兴趣的文章