一、源端配置
1.开启数据库允许REPLICATION的参数
alter system set ENABLE_GOLDENGATE_REPLICATION=true
2.创建表空间、创建管理用户、赋予权限(sqlplus)
create tablespace SSP datafile '/u01/app/oracle/12/oradata/orcl/ssp.dbf' size 50M autoextend on next 50M maxsize unlimited;赋予ogg用户管理以Oracle GoldenGate的管理权限
3、开启数据库的SUPPLEMENTAL LOG DATA功能
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
Database altered.
SQL> ALTER DATABASE FORCE LOGGING;
Database altered.
SQL> ALTER SYSTEM SWITCH LOGFILE;
System altered.
SQL> SELECT supplemental_log_data_min,force_logging FROM v$database;
SUPPLEME FORCE_LOGGING
-------- ---------------------------------------
YES YES
4、开启数据库追加日志
SQL> alter database add supplemental logdata;
5、查看数据库是否开启归档日志模式(需要确定归档日志存储空间大小,以及删除策略)
Selectlog_mode FROM v$database;
如果没有,则修改并重启修改数据库模式:
SQL>shutdown immediate
SQL>startup mount
SQL>ALTER DATABASE ARCHIVELOG;
6、确保REDO和ARCHIVELOG包含SUPPLEMENTAL LOG数据,通过以下命令转换日志
ALTER SYSTEM SWITCH LOGFILE;
system altered.
7、进入Oracle GoldenGate 的安装目录中启动ggsci程序
./ggsci
8、配置OGG管理进程
10、启动管理进程
11、将需要同步的数据库表加载到ogg下,确保ogg能识别
11.1使用管理账号登录
11.2添加数据库表
12、配置抽取进程
einta是自定义的进程名
Extract einta
SETENV (ORACLE_SID='orcl')
userid ogg,password ogg
TranlogOptions IntegratedParams (max_sga_size 256)
Exttrail ./dirdat/in
LOGALLSUPCOLS
UPDATERECORDFORMAT COMPACT
Table OGG.*;
13、注册Extract进程和Extract组还有本地的Extract Trail文件
register extract einta database
add extract einta,integrated tranlog,begin now
add exttrail ./dirdat/in,extract einta,megabytes 10
14、配置投递进程
Extract pinta
SETENV (ORACLE_SID='orcl')
Userid ogg, password ogg
rmthost 192.168.107.23, mgrport 7809
rmttrail ./dirdat/pn
Table OGG.*;
15、创建DATA PUMP组然后添加远程Extract trail文件
16、启动所有进程
start mgr
start einta
start pinta
17、启动后查看状态
18、如果有启动失败,看安装目录下的ggser.log文件,并利用错误码去官方文档中寻求解决方案
二、目标端配置
1、配置ogg管理进程,同上
内容为
Port 7809
DynamicPortList 20100-20199
PurgeOldExtracts ./dirdat/*, UseCheckPoints, MinKeepHours 2
Autostart Replicat R*
AUTORESTART Replicat *, WaitMinutes 1, Retries 3
ACCESSRULE, PROG *, IPADDR 192.168.107.*, ALLOW
2、添加需要同步的数据库表加载到OGG下(如果目标端不是数据库,是Hbase之类的话跳过这一步)
GGSCI 9> Add TranData 用户.表名 【*代表所有表】
GGSCI 10> Info TranData用户.表名 【*代表所有表】
3、配置Replicat复制进程(以下配置是Hbase的配置)
GGSCI >Edit Param rinta
(以下配置是Hbase环境)
(以下是配置是Oracle环境)
Replicatrinta
SETENV(ORACLE_SID='orcl')
DBOPTIONSINTEGRATEDPARAMS(parallelism 6)
AssumeTargetDefs
DiscardFile ./dirrpt/rpdw.dsc, Purge
userid ogg,password ogg
Map ogg.*, target ogg.*;
4、登陆数据库,加到Replicat工作组
dblogin userid ogg,password ogg
add replicat rinta Integrated exttrail./dirdat/pn
5、启动进程
start mgr
start rinta