Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程

文中涉及的安装包以及任何问题请加下方二维码免费获取提问sql

1.环境准备数据库

源Oracle:11g R2 64位 ip:192.168.40.66 操做系统:Centos6.5 64位vim

目标Oracle:11g R2 64位 ip:192.168.40.67 操做系统:Centos6.5 64位bash

2.下载OGG软件并解压安装服务器

源服务器session

#mkdir -p /u01/app/oracle/ogg oracle

#unzip ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zipapp

#tar -xvf fbo_ggs_Linux_x64_ora11g_64bit.tar -C /u01/app/oracle/ogg/ ide

#chown -R oracle:oinstall /u01/app/oracle/ogg性能

目标服务器

#mkdir -p /u01/app/oracle/ogg 

#unzip ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip

#tar –xvf fbo_ggs_Linux_x64_ora11g_64bit.tar -C /u01/app/oracle/ogg/ 

#chown -R oracle:oinstall /u01/app/oracle/ogg

 准备OGG环境变量

 1)源服务器

#vim /home/oracle/.bash_profile

增长以下两行:

export GGATE=$ORACLE_BASE/ogg

export LD_LIBRARY_PATH=$ORACLE_HOME/lib
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
生效环境变量

#source /home/oracle/.bash_profile

目标服务器

 #vim /home/oracle/.bash_profile

 增长以下两行:

 export GGATE=$ORACLE_BASE/ogg

export LD_LIBRARY_PATH=$ORACLE_HOME/lib
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
生效环境变量

 #source /home/oracle/.bash_profile

配置日志模式

 只要配置源服务器,目标服务器不用配置

配置为规档模式

#su – oracle

#sqlplus / as sysdba

SQL> shutdown immediate;

SQL> startup mount;

SQL> alter database archivelog;

SQL> alter database open;

SQL> alter system set log_archive_dest_1='location=/u01/archive' scope=both;

 配置日志模式(打开强制规档与补充日志模式)

SQL> alter database add supplemental log data;  

SQL> alter database force logging; 

3)查看配置结果:

SQL> select log_mode,supplemental_log_data_min,force_logging from v$database;
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
建立GoldenGate用户账号

 1) 源服务器

#su - oracle

#sqlplus / as sysdba

SQL>create tablespace tbs_ogg datafile '/u01/app/oracle/oradata/orcl/tbs_ogg.dbf' size 10M autoextend on next 10M;

 SQL>create user ogg identified by ogg default tablespace tbs_ogg temporary tablespace TEMP quota unlimited on tbs_ogg;

 SQL>grant connect,resource to ogg;

 SQL>grant create session,alter session to ogg;

 SQL>grant select any dictionary,select any table to ogg;

 SQL>grant alter any table to ogg;

 SQL>grant flashback any table to ogg;

 SQL>grant execute on dbms_flashback to ogg;

目标服务器

 #su - oracle

 #sqlplus / as sysdba

 SQL>create tablespace tbs_ogg datafile '/u01/app/oracle/oradata/orcl/tbs_ogg.dbf' size 10M autoextend on next 10M;

 SQL>create user ogg identified by ogg default tablespace tbs_ogg temporary tablespace TEMP quota unlimited on tbs_ogg;

 SQL>grant connect,resource to ogg;

 SQL>grant create session,alter session to ogg;

 SQL>grant select any dictionary,select any table to ogg;

 SQL>grant alter any table to ogg;

 SQL>grant flashback any table to ogg;

 SQL>grant execute on dbms_flashback to ogg;

 SQL>grant insert any table to ogg;

 SQL>grant delete any table to ogg;

 SQL>grant update any table to ogg;

安装GoldenGate软件

 源服务器配置

 #su – oracle

#cd /u01/app/oracle/ogg

#./ggsci

GGSCI  1>create subdirs
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
GGSCI 2> quit

目标服务器都要配置

#su - oracle

#cd /u01/app/oracle/ogg

#./ggsci

GGSCI 1> create subdirs
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
GoldenGate DML同步源端配置

#cd /u01/app/oracle/ogg

#./ggsci

 源MGR进程

编辑主进程组

GGSCI  1>edit params mgr

 输入i进入编辑模式,在文件中增长以下参数:

port 7809

dynamicportlist 7800-8000

autorestart extract *,retries 5,waitminutes 2,resetminutes 5

按ESC键退出编辑模式,输入:wq进行保存。

说明:

 port 指定mgr进程通讯端口;

 dynamicportlist 表示mgr进程能够为源与目的端动态通讯指定端口;

 autorestart extract 表示自动重启extract进程组,每2分钟尝试重启全部进程,重试5次,每5分钟清零。

 配置参数后,重启mgr进程生效

启动主管理进程

GGSCI 2>start mgr

配置Extract进程组

编辑eora配置文件

GGSCI  4>edit params eora

输入i进入编辑模式,在文件中增长以下参数:

extract eora

dynamicresolution

setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK) 

userid ogg,password ogg  

exttrail /u01/app/oracle/ogg/dirdat/et  

table scott.*; 

按ESC键退出编辑模式,输入:wq进行保存。

说明:

 extract eora定义extract进程别名

 dynamicresolution 

setenv设置环境变量

 userid 登陆数据库

 exttrail指定本地trail文件地址

 table 定义同步的表  scott.* 表示 同步scott用户下的全部表

添加抽取进程

GGSCI 2>add extract eora, tranlog,begin now

添加本地trail文件

GGSCI  2>add exttrail /u01/app/oracle/ogg/dirdat/et,extract eora

说明:

 建立本地trail文件,主extract进程负责写这部分文件,pump负责把这部分文件传到目标服务器端。

 启动eora服务

GGSCI 2>start extract eora 

配置Pump进程组 

编辑pump配置文件

GGSCI  2>edit params pump_so

输入i进入编辑模式,在文件中增长以下参数:

extract pump_so

dynamicresolution

passthru

rmthost 192.168.40.66,mgrport 7809,compress

rmttrail /u01/app/oracle/ogg/dirdat/pt

table scott.*;

按ESC键退出编辑模式,输入:wq进行保存。

上面文件中的ip(192.168.40.66),要换成目标端的ip。

添加pump进程  源端路径

GGSCI 2>add extract pump_so,exttrailsource  /u01/app/oracle/ogg/dirdat/et

添加远程trail文件  目标路径

GGSCI  2>add rmttrail /u01/app/oracle/ogg/dirdat/pt,extract pump_so

说明: 指定远程trail文件

启动pump进程

GGSCI  2>start extract pump_so

GoldenGate DML同步目标端配置

#cd /u01/app/oracle/ogg

#./ggsci

目标端MGR进程

编辑MGR配置文件

GGSCI  2>edit params mgr

输入i进入编辑模式,在文件中增长以下参数:

port 7809

dynamicportlist 7800-8000

autostart er *

autorestart extract *, waitminutes 2, resetminutes 5

lagreporthours 1

laginfominutes 3

lagcriticalminutes 5

purgeoldextracts /u01/app/oracle/ogg/dirdat/rt*, usecheckpoints, minkeepdays 3

按ESC键退出编辑模式,输入:wq进行保存。

2) 启动MGR

GGSCI  2>start mgr

 添加检查表

说明: 当咱们在GLOBALS 文件里指定了默认的checkpoint 以后,新的Replicat groups 在建立时会自动使用这个参数,不须要其余指令

 编辑全局配置文件

GGSCI 2>edit params ./GLOBALS 

输入i进入编辑模式,在文件中增长以下参数:

CHECKPOINTTABLE ogg.checkpoint

按ESC键退出编辑模式,输入:wq进行保存。

这里须要退出ggsci终端 

GGSCI 2>exit

从新进入

#./ggsci 

添加checkpoint表

GGSCI 1> dblogin userid ogg,password ogg 

Successfully logged into database.

GGSCI  2> add checkpointtable ogg.checkpoint

Successfully created checkpoint table OGG.CHECKPOINT.

配置目标端Peplicat进程组

 编辑配置文件

GGSCI 1>edit params repl

输入i进入编辑模式,在文件中增长以下参数:

replicat repl

userid ogg,password ogg

assumetargetdefs

reperror default,discard

discardfile /u01/app/oracle/ogg/dirrpt/repl.dsc,append,megabytes 50

dynamicresolution

map scott., target scott.;

按ESC键退出编辑模式,输入:wq进行保存。

添加复制进程

GGSCI 1>add replicat repl,exttrail /u01/app/oracle/ogg/dirdat/pt, CHECKPOINTTABLE ogg.checkpoint

启动进程

GGSCI  1>start repl

目标端查看checkpoint状态

#su - oracle

#sqlplus ogg/ogg

SQL>select tname from tab; 

TNAME 

------------------------------------- 

CHECKPOINT TABLE

CHECKPOINT_LOX TABLE

SQL>exit;
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
 DML配置测试     

源端和目标端同时建立t1表

 源端建立t1表

#sqlplus scott/123456

SQL>create table t1 (id char(10));

目标端建立t1表

#sqlplus scott/123456

SQL>create table t1 (id char(10));

源端执行DML操做后提交

SQL>insert into t1 values(100);

SQL>insert into t1 values(300);

SQL>commit;

4)目标端查看

SQL> select * from t1;

能查到下面两条数据,便可
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
说明:到此goldengate DML单向配置已经配置完毕,经过简单的测试示例来进行测试。

GoldenGate DDL同步源端配置 

服务器源端操做

指定数据库模式

SQL>exit

#cd /u01/app/oracle/ogg/ 

#./ggsci

GGSCI  1> edit param ./GLOBALS

输入i进入编辑模式,在文件中增长以下参数:

ggschema ogg

按ESC键退出编辑模式,输入:wq进行保存。 

GGSCI  2> view param ./GLOBALS 查看 

ggschema ogg

GGSCI  3> stop mgr 

oralce 11gR2数据库须要关闭回收站。

GGSCI  3>quit

#sqlplus / as sysdba;

在关以前能够先看一下,若是是on,以下图所示,则回收站是开启的。

SQL>show parameter recyclebin
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
SQL>alter system set recyclebin=off deferred;

改完须要把数据库重启一下才会生效

SQL>shutdown immediate

SQL>startup

SQL>show parameter recyclebin
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
3) 安装DDL对象

SQL> grant dba to ogg;

说明: 如下各执行如提示:Enter Oracle GoldenGate schema name,均指定用户:ogg

SQL>@marker_setup
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
SQL>@ddl_setup

SQL>@role_setup 

SQL>grant GGS_GGSUSER_ROLE to ogg;

SQL>@ddl_enable

SQL>@marker_status.sql

注1: 执行dbmspool包将在数据库中建立DBMS_SHARED_POOL包,以后ddl_pin包须要用到

SQL>@?/rdbms/admin/dbmspool.sql

Package created.

Grant succeeded.

View created.

Package body created.

注2: 执行ddl_pin.sql经过dbms_shared_pool.keep存储过程将DDLReplication相关对象keep在共享池中,以保证这些对象不要RELOAD,提高性能。

SQL>@ddl_pin.sql ogg

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

PL/SQL procedure successfully completed.

源端操做-修改eora(抽取)进程的params文件

中止eora(抽取)进程

GGSCI  2> stop extract eora

编辑配置文件

GGSCI  3> edit params eora

输入i进入编辑模式,在文件中增长以下黑色背景参数:

extract eora

dynamicresolution

setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)

userid ogg,password ogg

exttrail /u01/app/oracle/ogg/dirdat/et

ddl include all

ddloptions addtrandata, report

table scott.*; 

按ESC键退出编辑模式,输入:wq进行保存。

启动mgr,eora进程

GGSCI  4> start mgr 

GGSCI  5> start extract eora

查看eora进程启动状况

GGSCI  6> info extract eora
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
目标端操做-修改replicat进程的params文件

中止mgr进程

GGSCI 1>stop mgr

 中止repl进程

GGSCI  1> stop replicat repl 

 编辑repl配置文件

GGSCI  1> edit params repl 

输入i进入编辑模式,在文件中增长以下黑色背景参数:

replicat repl

userid ogg, password ogg

assumetargetdefs

reperror default, discard

discardfile /u01/app/oracle/ogg/dirrpt/repl.dsc, append, megabytes 50

dynamicresolution

ddloptions report

ddlerror default ignore retryop maxretries 3 retrydelay 5

ddlerror default discard

ddlerror default ignore retryop

map scott., target scott.;

按ESC键退出编辑模式,输入:wq进行保存。

启动repl进程 

GGSCI  4>start mgr

启动mgr进程后,系统会自动启动repl进程

GGSCI  5> info all
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
DDL测试

本节验证源端t1表增长字段后,目标端自动改变。

添加字段前:

源端查看:

#sqlplus scott/123456

SQL> desc t1;
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
目标端查看

#sqlplusscott/123456

SQL> desc t1;
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
源端添加字段test

SQL>alter table t1 add(test number(10));

SQL>desc t1;
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程
目标端验证

SQL> desc t1;
Linux/Centos6.5 Orace 11g R2 ogg 单向同步配置过程到此配置完成。若是对此有兴趣或者有问题须要问,请添加:15149813470,免费解答。

相关文章
相关标签/搜索