ERP数据库 OGG同步实施 RMAN初始化+开启DDL

一.环境介绍

schema:APPS、BOM、CUX、GL、HR、MRP、WIP、PA、PO、APPLSYSPUB、APPLSYS
注意:需要同步数据库所有用户下的数据,数据库在TB级以上,每天的业务量较大。
通过rman的方式进行初始化,需要开启DDL功能,同时注意OGG用户密码的安全

二.GoldenGate安装

1、源端OGG安装

yum install readline-devel -y

cd /software
tar zxvf rlwrap-0.42.tar.gz

cd rlwrap-0.42
./configure
make && make install

#创建OGG目录
mkdir /ogg
chown -R oracle:oinstall /ogg
chmod -R 775 /ogg

#设置环境变量
su - oracle
 cat ~/.bash_profile
export ORACLE_BASE=/home/erpdemo/db
export ORACLE_HOME=/home/erpdemo/db/12.1.0
export ORACLE_SID=ERPDEMO
export OGG_HOME=/ogg
export PATH=$OGG_HOME:$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OGG_HOME:$ORACLE_HOME/lib:/usr/lib
alias sqlplus="rlwrap sqlplus"
alias ggsci="rlwrap ggsci"
 source ~/.bash_profile

#上传到OGG软件到 /software
su - oracle
cd /software/
unzip ggs19.1.0.0.4_Linux_x64_shiphome.zip

cd fbo_ggs_Linux_x64_shiphome/Disk1/response

#编辑响应文件内容
 vim oggcore.rsp
oracle.install.responseFileVersion=/home/oracle/rspfmt_ogginstall_response_schema_v19_1_0
INSTALL_OPTION=ORA12c
SOFTWARE_LOCATION=/ogg
START_MANAGER=
MANAGER_PORT=
DATABASE_LOCATION=
INVENTORY_LOCATION=/home/orademo/oraInventory
UNIX_GROUP_NAME=oinstall

#执行静默安装:
 cd /software/fbo_ggs_Linux_x64_shiphome/Disk1/

./runInstaller -silent -nowait -responseFile /software/fbo_ggs_Linux_x64_shiphom
 source ~/.bash_profile

登录测试并创建相应的目录
 cd /ogg/
 ggsci
create subdirs

2、目标端OGG安装(参考上面源端的安装步骤)

..............................

3.数据库环境的准备工作

3.1.源端创建GoldenGate用户表空间
create tablespace ogg_tbs datafile '/home/erpdemo/db/data/ogg.dbf' size 200m autoextend off;

3.2.源端创建GoldenGate用户
create user ogg identified by ogg default tablespace ogg_data;
grant connect,resource,dba,create table,create sequence to ogg;
grant dba to ogg;

3.3.目标端创建GoldenGate用户表空间
create tablespace ogg_tbs datafile '/home/erpdemo/db/data/ogg.dbf' size 200m autoextend off;

3.4.目标端创建GoldenGate用户表空间
create user ogg identified by ogg default tablespace ogg_data;
grant connect,resource,dba,create table,create sequence to ogg;
grant dba to ogg;

3.5.源端创建测试用户及测试数据
SQL> create user test identified by test;
User created.
SQL> grant connect,resource,dba to test;
Grant succeeded.
SQL> conn test/test
Connected.
SQL> create table test (id number(10) primary key ,name varchar(8));
Table created.
SQL> insert into test values(1,'zhangsan');
1 row created.
SQL> insert into test values(2,'lisi');
1 row created.
SQL> commit;

3.6.源端开启归档模式、强制日志、附加日志
3.6.1.查看是否开启归档模式、强制日志、附加日志

SQL> select LOG_MODE, SUPPLEMENTAL_LOG_DATA_MIN,FORCE_LOGGING from v$database;

3.7.2.开启归档

su - oracle

mkdir -p /u01/archive
chown -R oracle:oinstall /u01/archive/

sqlplus "/as sysdba"

SQL> archive log list
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /u01/app/oracle/product/11.2.0/db_1/dbs/arch
Oldest online log sequence 5
Current log sequence 7

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.


SQL> startup mount
ORACLE instance started.
Total System Global Area 1060585472 bytes
Fixed Size 2260000 bytes Variable Size 905970656 bytes
Database Buffers 146800640 bytes
Redo Buffers 5554176 bytes
Database mounted.

SQL> alter database archivelog;
Database altered.

SQL> alter database open;
Database altered.

SQL> alter system set log_archive_dest_1='location=/u01/archive';
System altered.

SQL> archive log list

Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/archive
Oldest online log sequence 5
Next log sequence to archive 7
Current log sequence 7

3.6.3.开启强制日志
SQL> alter database force logging;
Database altered.

3.6.4.开启附加日志
SQL> alter database add supplemental log data;
Database altered.

3.6.5.查看是否开启归档模式、强制日志、附加日志
SQL> select LOG_MODE, SUPPLEMENTAL_LOG_DATA_MIN,FORCE_LOGGING from v$database;
LOG_MODE SUPPLEME FOR
------------ -------- ---
ARCHIVELOG YES YES

3.7.开启DDL
3.7.1.在源端执行与DDL同步相关的SQL脚本
切记@marker_setup.sql 一定要在cd $OGG_HOME目录下执行否则会卡主。执行脚本时要输入ogg管理用户,本实例是ogg。
cd /ogg
sqlplus / as sysdba
grant execute on utl_file to ogg;
@marker_setup.sql
@ddl_setup.sql
@role_setup.sql

grant GGS_GGSUSER_ROLE to ogg;
@ddl_enable.sql
@ddl_pin ogg
@marker_status

4.GoldenGate基本配置

4.1.OGG源端配置
4.1.1.配置mgr进程
su - oracle
cd /ogg
mkdir -p /ogg/dirdat/ETEST
mkdir -p /ogg/dirdat/PTEST
GGSCI (cndba) 3> edit params mgr
port 7809
DYNAMICPORTLIST 7810-7899
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 3
PURGEOLDEXTRACTS ./dirdat/ETEST/*,usecheckpoints, minkeepdays 3
PURGEOLDEXTRACTS ./dirdat/PTEST/*,usecheckpoints, minkeepdays 3
PURGEDDLHISTORY MINKEEPDAYS 7, MAXKEEPDAYS 10
PURGEMARKERHISTORY MINKEEPDAYS 7, MAXKEEPDAYS 10
accessrule, prog server, ipaddr 172.16.*.*, pri 1, allow
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45
AUTOSTART ER *
AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3

GGSCI (cndba) 5> start mgr
Manager started.

GGSCI (cndba) 6> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING

4.1.2.源端配置增量检查点与心跳表
GGSCI>EDIT PARAMS ./GLOBALS

GGSCHEMA ogg
checkpointtable ogg.checkpoint
exit;

ggsci
dblogin userid ogg password ogg
ADD CHECKPOINTTABLE ogg.checkpoint
ADD HEARTBEATTABLE

4.1.3.添加用户级transdata
GGSCI (cndba) 10> dblogin userid ogg,password ogg
Successfully logged into database.

添加测试schema
add SCHEMATRANDATA TEST

添加生产环境SCHEMA

add SCHEMATRANDATA APPS
add SCHEMATRANDATA APPLSYSPUB
add SCHEMATRANDATA APPLSYS
add SCHEMATRANDATA BOM
add SCHEMATRANDATA CUX
add SCHEMATRANDATA GL
add SCHEMATRANDATA HR
add SCHEMATRANDATA MRP
add SCHEMATRANDATA WIP
add SCHEMATRANDATA PA
add SCHEMATRANDATA PO

验证是否添加supplemental logging成功

info SCHEMATRANDATA TEST

info SCHEMATRANDATA APPS
info SCHEMATRANDATA BOM
info SCHEMATRANDATA CUX
info SCHEMATRANDATA GL
info SCHEMATRANDATA HR
info SCHEMATRANDATA MRP
info SCHEMATRANDATA WIP
info SCHEMATRANDATA PA
info SCHEMATRANDATA PO

4.1.4.配置extract抽取进程

首选查询数据库字符集

sqlplus "/as sysdba"
select userenv('language') from dual;
AMERICAN_AMERICA.AL32UTF8
exit

cd /ogg
mkdir ./dirdat/ETEST
mkdir ./dirrpt/ETEST

GGSCI (cndba) 16> edit params etest

EXTRACT ETEST
SETENV (ORACLE_HOME ="/home/erpdemo/db/12.1.0")
SETENV (ORACLE_SID = "ERPDEMO")
SETENV (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID ogg, PASSWORD ogg
TRANLOGOPTIONS DBLOGREADER
DBOPTIONS ALLOWUNUSEDCOLUMN
FETCHOPTIONS NOUSESNAPSHOT
GETTRUNCATES
DDL INCLUDE ALL
WARNLONGTRANS 2h,CHECKINTERVAL 5m
DISCARDFILE ./dirrpt/ETEST/ETEST.dsc,APPEND,MEGABYTES 1024
DISCARDROLLOVER AT 02:30
REPORTCOUNT EVERY 1 MINUTES, RATE
EXTTRAIL ./dirdat/ETEST/ex
TABLE TEST.*;

GGSCI (cndba) 13> dblogin userid ogg,password ogg
Successfully logged into database.
GGSCI (cndba) 14> add extract etest, tranlog, begin now
EXTRACT added.
GGSCI (cndba) 15> add exttrail ./dirdat/ETEST/ex, extract etest, MEGABYTES 1024
EXTTRAIL added.

4.1.4.配置pump传输进程
su - oracle
cd /ogg
mkdir ./dirdat/PTEST
mkdir ./dirrpt/PTEST
GGSCI (cndba) 20> edit params ptest

EXTRACT PTEST
SETENV (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
USERID ogg, PASSWORD ogg
PASSTHRU
RMTHOST 172.16.60.104, MGRPORT 7809
RMTTRAIL ./dirdat/RTEST/re
DISCARDFILE ./dirrpt/PTEST/PTEST.dsc, APPEND, MEGABYTES 1024
DISCARDROLLOVER AT 02:30
TABLE TEST.*;
GGSCI (cndba) 13> dblogin userid ogg,password ogg
Successfully logged into database.
GGSCI (cndba) 18>add extract PTEST, exttrailsource ./dirdat/ETEST/ex
EXTRACT added.
GGSCI (cndba) 19>add rmttrail ./dirdat/RTEST/re,EXTRACT PTEST,MEGABYTES 1024
RMTTRAIL added.

4.4.5 源端启动进程并验证
start ETEST

start PTEST
 

查询进程 info all

4.2.OGG目标端配置
4.2.1.配置mgr进程
su - oracle
cd /ogg
mkdir ./dirdat/RTEST

mkdir ./dirrpt/RTEST
GGSCI (cndba) 3> edit params mgr
port 7809
DYNAMICPORTLIST 7810-7899
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 3
PURGEOLDEXTRACTS ./dirdat/RTEST/*,usecheckpoints, minkeepdays 3
PURGEDDLHISTORY MINKEEPDAYS 7, MAXKEEPDAYS 10
PURGEMARKERHISTORY MINKEEPDAYS 7, MAXKEEPDAYS 10
accessrule, prog server, ipaddr 172.16.*.*, pri 1, allow
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45
AUTOSTART ER *
AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 3

GGSCI (cndba) 5> start mgr
Manager started.

GGSCI (cndba) 6> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING

5.初始化数据-RMAN


5.1.启动生产端和容灾端的管理进程
--源端
[oracle@www.cndba.cn ogg]$ cd /u01/app/oracle/ogg
[oracle@www.cndba.cn ogg]$ ./ggsci
GGSCI (cndba) 1> start mgr
Manager started.
GGSCI (cndba) 1> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED EXT1 00:00:00 00:40:35
EXTRACT STOPPED PUMP1 00:00:00 00:26:42

--目标端
[oracle@host1 ~]$ cd /u01/app/oracle/ogg
[oracle@host1 ogg]$ ./ggsci
GGSCI (host1) 1> start mgr
Manager started.

GGSCI (cndba) 14> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING

5.2.启动源端的EXTRACT进程
GGSCI (cndba) 2> start etest
Sending START request to MANAGER ...
EXTRACT EXT1 starting

GGSCI (cndba) 4> start ptest
Sending START request to MANAGER ...
EXTRACT PUMP1 starting

GGSCI (cndba) 5> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING ETEST 00:00:00 00:00:03
EXTRACT RUNNING PTEST 00:00:00 00:28:57

5.3.查看数据库中所有事务的开始时间

查看数据库中所有事务的开始时间,直到其大于抽取进程的启动时间再开始备份数据库,
因为GoldenGate 的只获取在Extract 启动以后的交易变化,在Extract 启动之
前开始而在Extract 启动以后才完成的交易GoldenGate 将会忽略这些交易,这些被忽
略的交易数据就会丢失。所以需要等数据库中所以的交易都在Extract 启动之后开始
的才能开始备份数据库。通过v$transaction 视图来查看数据库中的交易:

select min(start_time) from v$transaction;
 

5.4.RMAN 备份源端数据库
当所有在Extract 启动之前的开始的交易都完成后,我们就可以使用RMAN 备份生产
端的数据库了。备份数据库的过程中一定要密切监控Extract 进程的状态,保证其一
直正常运行:

5.4.1.源端使用RMAN备份全库
注意:备份过程保证抽取进程状态一直正常。
--备份归档和控制文件如果有三个日志文件组,可以按照以下方式进行切换,如果更多,则对应增加切换的次数即可)
--备份数据库
run {
allocate channel ch00 type disk maxpiecesize 10g;
allocate channel ch01 type disk maxpiecesize 10g;
sql 'alter system switch logfile';
sql 'alter system switch logfile';
sql 'alter system switch logfile';
sql 'alter system switch logfile';
crosscheck backupset;
delete noprompt expired backupset;
backup database format '/u01/backup/bk_%s_%p_%t';
sql 'alter system archive log current';
BACKUP ARCHIVELOG ALL FORMAT '/u01/backup/ARCH_%U';
BACKUP CURRENT CONTROLFILE FORMAT '/u01/backup/bk_controlfile';
release channel ch00;

release channel ch01;
}
--将备份文件拷贝到目标主机上。
cd /u01/backup/
[root@www.cndba.cn backup]# scp * 192.168.1.86:/u01/backup/
--在目标端给备份文件授权
[root@www.cndba.cn backup]# chown -R oracle:oinstall /u01/backup/

5.5.恢复目标端数据库
5.5.1.将数据库启动到nomount
SQL> startup nomount
ORACLE instance started.
Total System Global Area 1060585472 bytes
Fixed Size 2260000 bytes
Variable Size 905970656 bytes
Database Buffers 146800640 bytes
Redo Buffers 5554176 bytes

5.5.2.恢复控制文件
RMAN> restore controlfile from '/u01/backup/bk_controlfile';
Starting restore at 07-JUN-18
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/oradata/cndba/control01.ctl
output file name=/u01/app/oracle/oradata/cndba/control02.ctl
Finished restore at 07-JUN-18

5.5.3.将数据库启动到mount
SQL> alter database mount;
Database altered.

5.5.4.注册备份集
RMAN> catalog start with '/u01/backup/';
using target database control file instead of recovery catalog
searching for all files that match the pattern /u01/backup/
List of Files Unknown to the Database
=====================================
File Name: /u01/backup/bk_controlfile
Do you really want to catalog the above files (enter YES or NO)? yes
cataloging files...
cataloging done
List of Cataloged Files
=======================
File Name: /u01/backup/bk_controlfile

5.5.5.恢复数据库
RMAN> RESTORE DATABASE;

Starting restore at 07-JUN-18
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=20 device type=DISK
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/cndba/system01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/cndba/users01.dbf
channel ORA_DISK_1: reading from backup piece /u01/backup/bk_31_1_978141141
channel ORA_DISK_1: piece handle=/u01/backup/bk_31_1_978141141 tag=TAG20180607T015220
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:55
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/cndba/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/cndba/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/cndba/ogg01.dbf
channel ORA_DISK_1: reading from backup piece /u01/backup/bk_32_1_978141141
channel ORA_DISK_1: piece handle=/u01/backup/bk_32_1_978141141 tag=TAG20180607T015220
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:45
Finished restore at 07-JUN-18
RMAN> RECOVER DATABASE;
executing command: SET until clause
Starting recover at 07-JUN-18
using channel ORA_DISK_1
starting media recovery
media recovery complete, elapsed time: 00:00:00
Finished recover at 07-JUN-18
 

5.5.6.使用以下SQL语句查找目标端数据库的SCN号:(得到该SCN号之后,启动复制进程时,使用该SCN号)
SQL> SELECT CHECKPOINT_CHANGE#,CHECKPOINT_TIME FROM V$DATAFILE_HEADER;
CHECKPOINT_CHANGE# CHECKPOINT_T
------------------ ------------
1066024 07-JUN-18
1066024 07-JUN-18
1066024 07-JUN-18
1066024 07-JUN-18
1066024 07-JUN-18

a) 如果目标端数据库在“5.4.1”操作之后,又额外追加了源数据库rman备份后的归档日志,导致目标端数据库的SCN号大于“5.4.1”中SCN号。所以必须以目标端数据库当前的SCN为主,从而避
b) 如果目标端数据库在“5.4.1”操作之后,没有额外追加源数据库rman备份后的归档日志,则“5.5.6”中得到的SCN号应该与“5.4.1”中的SCN号相等;

--以resetlogs方式打开数据库
SQL> alter database open resetlogs;
Database altered.

5.5.7.目标端配置增量检查点与心跳表
GGSCI>EDIT PARAMS ./GLOBALS
GGSCHEMA ogg
checkpointtable ogg.checkpoint
exit;

dblogin userid ogg password ogg
ADD CHECKPOINTTABLE ogg.checkpoint
ADD HEARTBEATTABLE

GGSCI (cndba) 9> dblogin userid ogg,password ogg
Successfully logged into database.
GGSCI (cndba) 10> add checkpointtable ogg.checkpoint
Successfully created checkpoint table ogg.checkpoint.

5.5.8.配置目标端replicat复制进程
su - oracle
cd /ogg
mkdir ./dirdat/RTEST
mkdir ./dirrpt/RTEST

GGSCI (cndba) 12> edit params rtest
REPLICAT RTEST
SETENV (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
USERID ogg, PASSWORD ogg
DISCARDFILE ./dirrpt/RTEST/RTEST.dsc, APPEND, MEGABYTES 1024
DISCARDROLLOVER AT 02:30
REPERROR DEFAULT,ABEND
REPORTCOUNT EVERY 30 MINUTES,RATE
DBOPTIONS ENABLE_INSTANTIATION_FILTERING
DDLERROR DEFAULT DISCARD
DDLOPTIONS REPORT

ddl include all
ddlerror default ignore retryop maxretries 3 retrydelay 5
ALLOWNOOPUPDATES
assumetargetdefs
GETTRUNCATES
map TEST.*,target TEST.*;


dblogin userid ogg password ogg
GGSCI (cndba) 11> add replicat rtest, exttrail ./dirdat/RTEST/re, checkpointtable ogg.checkpoint
REPLICAT added.

5.5.9.用SCN 启动Replicat
 cd $OGG_HOME
 ./ggsci
GGSCI (cndba) 15> start rtest, aftercsn 1066024
Sending START request to MANAGER ...
REPLICAT REP1 starting
GGSCI (cndba) 33> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
REPLICAT RUNNING RTEST 00:00:00 00:00:07

6.数据同步测试

6.1.DML测试
--检查目标端数据是否正常
GGSCI (cndba) 4> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
REPLICAT RUNNING REP1 00:00:00 00:00:06

SQL> select * from test;
ID NAME
---------- --------
1 zhangsan
2 lisi

--源端表中添加数据
SQL> insert into test values(3,'wanger');
1 row created.
SQL> commit;
Commit complete.

SQL> select * from test;

ID NAME
---------- --------
1 zhangsan
2 lisi
3 wanger

--目标端查看
SQL> select * from test;
ID NAME
---------- --------
1 zhangsan
2 lisi
3 wanger
可以看到可以同步过来的。

6.2.DDL测试
--源端:
SQL> create table test1 (id number(10) primary key ,name varchar(8));
Table created.

SQL> insert into test1 values(1,'zhangsan');
1 row created.
SQL> commit;
Commit complete.

--目标端:
SQL> desc test1
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(10)
NAME VARCHAR2(8)
SQL> select * from test1;
ID NAME
---------- --------
1 zhangsan

7.生产环境Schema配置


schema:APPS、BOM、CUX、GL、HR、MRP、WIP、PA、PO、APPLSYSPUB、APPLSYS
备注:生产环境为每一个SCHEMA配置单独的extract进程、pump进程、replication进程
规划如下:

7.1 源端SCHEMA APPS配置

--SCHEM:APPS配置extract进程
cd /ogg
mkdir ./dirdat/E-APPS
mkdir ./dirrpt/E-APPS

edit params E-APPS

 EXTRACT E-APPS
SETENV (ORACLE_HOME ="/home/erpdemo/db/12.1.0")
SETENV (ORACLE_SID = "ERPDEMO")
SETENV (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID ogg, PASSWORD ogg
TRANLOGOPTIONS DBLOGREADER
DBOPTIONS ALLOWUNUSEDCOLUMN
FETCHOPTIONS NOUSESNAPSHOT
GETTRUNCATES
DDL INCLUDE ALL
WARNLONGTRANS 2h,CHECKINTERVAL 5m
DISCARDFILE ./dirrpt/E-APPS/E-APPS.dsc,APPEND,MEGABYTES 1024
DISCARDROLLOVER AT 02:30
REPORTCOUNT EVERY 1 MINUTES, RATE
EXTTRAIL ./dirdat/E-APPS/ex
TABLE APPS.*;

add extract E-APPS, tranlog, begin now
add exttrail ./dirdat/E-APPS/ex, extract E-APPS, MEGABYTES 1024

--SCHEM:APPS配置pump进程
su - oracle
cd /ogg
mkdir ./dirdat/P-APPS
mkdir ./dirrpt/P-APPS

edit params P-APPS

EXTRACT P-APPS
SETENV (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
USERID ogg, PASSWORD ogg
PASSTHRU
RMTHOST 172.16.60.104, MGRPORT 7809
RMTTRAIL ./dirdat/R-APPS/re
DISCARDFILE ./dirrpt/P-APPS/P-APPS.dsc, APPEND, MEGABYTES 1024
DISCARDROLLOVER AT 02:30
TABLE APPS.*;

add extract P-APPS, exttrailsource ./dirdat/E-APPS/ex
add rmttrail ./dirdat/R-APPS/re,EXTRACT P-APPS,MEGABYTES 1024

7.2 目标端SCHEMA APPS配置

--SCHEM:APPS配置replication进程
su - oracle
cd /ogg
mkdir ./dirdat/R-APPS
mkdir ./dirrpt/R-APPS
edit params R-APPS
REPLICAT R-APPS
SETENV (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
USERID ogg, PASSWORD ogg
DISCARDFILE ./dirrpt/R-APPS/R-APPS.dsc, APPEND, MEGABYTES 1024
DISCARDROLLOVER AT 02:30
REPERROR DEFAULT,ABEND
REPORTCOUNT EVERY 30 MINUTES,RATE
DBOPTIONS ENABLE_INSTANTIATION_FILTERING
DDLERROR DEFAULT DISCARD
DDLOPTIONS REPORT
ddl include all

ddlerror default ignore retryop maxretries 3 retrydelay 5
ALLOWNOOPUPDATES
assumetargetdefs
GETTRUNCATES
map APPS.*,target APPS.*;

ADD REPLICAT R-APPS EXTTRAIL ./dirdat/R-APPS/re,checkpointtable ogg.checkpoint

备注:其他的SCHEMA配置参考上述APPS配置

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红尘︶炼心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值