oracle golden gate安装,Oracle GoldenGate在RAC上部署安装

很多用户都采用了OGG作为生产环境的灾备复制软件,生产端通常是双节点的RAC,灾备端可能是同样环境也可能是单实例环境。生产端在安装OGG时会从存储上划分一个独立的共享磁盘,将其做成文件系统,然后将OGG软件和目录都放在该磁盘上,包括本地trail文件。下面的实验我们在虚拟机上来简单的创建一个上述灾备架构。

环境介绍:

Target

os:Enterprise Linux Enterprise Linux Server release 5.7

oracle 11.2.0.3 RAC 双节点

192.168.1.191   node1.localdomain       node1

192.168.1.192   node2.localdomain       node2

ogg:11.2.1.0.1

Source

os:Enterprise Linux Enterprise Linux Server release 5.7

oracle 11.2.0.3 单实例

192.168.1.21    oggtarget

ogg:11.2.1.0.1

Source系统设置

为Source端分配磁盘创建OGG,该磁盘为共享类型

划分磁盘

[root@node1 dev]# fdisk /dev/sdj

格式化磁盘

[root@node1 dev]# mkfs -t ext3 /dev/sdj1

创建挂载点

[root@node1 dev]# mkdir /goldengate

[root@node1 /]# chown oracle:oinstall /goldengate

加载挂载点

[root@node1 dev]# mount /dev/sdj1 /goldengate

开机自动加载

[root@node1 dev]# vi /etc/fstab

/dev/sdj1               /goldengate             ext3    defaults        1 2

解压缩ogg安装包

# su - oracle

[oracle@node1 ~]$ cd /goldengate/

[oracle@node1 goldengate]$ unzip /tmp/ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip

[oracle@node1 goldengate]$ tar xvf fbo_ggs_Linux_x64_ora11g_64bit.tar

在bash_profile中添加OGG_HOME

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_HOSTNAME=node1.localdomain

export ORACLE_SID=devdb1

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_UNQNAME=devdb

export OGG_HOME=/goldengate

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_TERM=xterm

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH:$OGG_HOME

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export EDITOR=vi

export LANG=en_US

export NLS_LANG=american_america.AL32UTF8

export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'

创建OGG应用目录

cd $OGG_HOME

[oracle@node1 goldengate]$ ggsci

GGSCI (node1.localdomain) 1> CREATE SUBDIRS

开启数据库级别日志补充

SYS@devdb1 >ALTER DATABASE FORCE LOGGING;

SYS@devdb1 >ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;

SYS@devdb1 >ALTER SYSTEM ARCHIVE LOG CURRENT;

SYS@devdb1 >col open_mode for a10

SYS@devdb1 >SELECT name,open_mode,force_logging,supplemental_log_data_min FROM v$database;

创建测试用户

SYS@devdb1 >CREATE USER snow IDENTIFIED BY snow DEFAULT TABLESPACE USERS;

SYS@devdb1 >GRANT CONNECT, RESOURCE TO snow;

SYS@devdb1 >conn snow/snow

SNOW@devdb1 >CREATE TABLE t1 (id INT PRIMARY KEY, name VARCHAR2(10));

创建OGG管理用户及其表空间

conn / as sysdba

SYS@devdb1 >select name from v$datafile;

SYS@devdb1 >CREATE TABLESPACE goldengate DATAFILE '+DATA/devdb/datafile/goldengate.dbf' SIZE 100M AUTOEXTEND ON;

SYS@devdb1 >CREATE USER oggadmin IDENTIFIED BY oggadmin DEFAULT TABLESPACE goldengate;

SYS@devdb1 >GRANT dba TO oggadmin;

添加角色

SYS@devdb1 >@/goldengate/role_setup

Enter GoldenGate schema name:oggadmin

GRANT GGS_GGSUSER_ROLE TO oggadmin;

设置全局参数

ogg global

GGSCI> EDIT PARAMS ./GLOBALS

GGSCHEMA oggadmin

Target系统设置

解压缩ogg安装包

cd /u01/app/oracle

mkdir gg

cd gg

unzip /tmp/ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip

tar xvf fbo_ggs_Linux_x64_ora11g_64bit.tar

在bash_profile中添加OGG_HOME

vi /home/oracle/.bash_profile

export ORACLE_SID=oggtarget

export ORACLE_BASE=/u01/app/oracle

export OGG_HOME=$ORACLE_BASE/gg

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export TNS_ADMIN=$ORACLE_HOME/network/admin

export ORACLE_TERM=xterm

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH:$OGG_HOME

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export EDITOR=vi

export LANG=en_US

export NLS_LANG=american_america.AL32UTF8

export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'

umask 022

alias s="sqlplus / as sysdba"

stty erase ^h

创建OGG应用目录

[oracle@oggtarget ~]$ cd $OGG_HOME

[oracle@oggtarget gg]$ ggsci

GGSCI (oggtarget) 1> CREATE SUBDIRS

创建测试用户

create user snow identified by snow default tablespace users;

grant connect, resource to snow;

conn snow/snow

create table t1 (id int primary key, name varchar2(20));

创建OGG管理用户及其表空间

conn / as sysdba

CREATE TABLESPACE goldengate

DATAFILE '/u01/app/oracle/oradata/oggtarget/goldengate01.dbf' SIZE 100m AUTOEXTEND ON;

CREATE USER oggadmin IDENTIFIED BY oggadmin DEFAULT TABLESPACE goldengate;

GRANT dba TO oggadmin;

设置全局参数

GGSCI> EDIT PARAMS ./GLOBALS

GGSCHEMA oggadmin

Source系统设置

配置管理进程

GGSCI> EDIT PARAM MGR

PORT 7809

开启表级别日志补充,追加对象为用户snow下所有表

DBLOGIN USERID oggadmin,PASSWORD oggadmin

ADD TRANDATA snow.t1

创建初级提取组ex1,源端是双节点RAC,此处设置参数THREADS 2

ADD EXTRACT ex1,TRANLOG,BEGIN NOW,THREADS 2

为初级提取组ex1指定本地trail文件

ADD EXTTRAIL /goldengate/dirdat/ex, EXTRACT ex1 MEGABYTES 5

配置初级提取组参数文件,源端是双节点RAC,此处设置参数TRANLOGOPTIONS DBLOGREADER

GGSCI> EDIT PARAMS ex1

EXTRACT ex1

USERID oggadmin, PASSWORD oggadmin

TRANLOGOPTIONS DBLOGREADER

EXTTRAIL /goldengate/dirdat/ex

TABLE snow.*;

创建投递组dp1,设置本地trail文件

ADD EXTRACT dp1 EXTTRAILSOURCE /goldengate/dirdat/ex

为投递进组dp1设置target端trail文件地址

ADD RMTTRAIL /u01/app/oracle/gg/dirdat/rt, EXTRACT dp1

配置投递组dp1参数文件

GGSCI> EDIT PARAMS dp1

EXTRACT dp1

USERID oggadmin, PASSWORD oggadmin

RMTHOST 192.168.1.21, MGRPORT 7809

RMTTRAIL /u01/app/oracle/gg/dirdat/rt

TABLE snow.*;

Target系统

配置管理进程

GGSCI> EDIT PARAM MGR

PORT 7809

创建检查点表

DBLOGIN USERID oggadmin,PASSWORD oggadmin

ADD CHECKPOINTTABLE oggadmin.checkpointtable

在全局环境中添加检查点表

EDIT PARAMS ./GLOBALS

GGSCHEMA oggadmin

CHECKPOINTTABLE oggadmin.checkpointtable

创建复制组rt1,设置读取trail文件路径以及检查点表

ADD REPLICAT rt1, EXTTRAIL /u01/app/oracle/gg/dirdat/rt, checkpointtable oggadmin.checkpointtable

为复制组rt1配置参数文件

GGSCL> EDIT PARAM rt1

REPLICAT rt1

USERID oggadmin, PASSWORD oggadmin

ASSUMETARGETDEFS

DISCARDFILE /u01/app/oracle/discards.dsc, PURGE

MAP snow.*, TARGET snow.*;

测试环节

启动source管理进程

GGSCI (node1.localdomain) 1> START MGR

启动target管理进程

GGSCI (oggtarget) 1> START MGR

启动source提取进程

GGSCI (node1.localdomain) 2> START EX1

启动target复制进程

GGSCI (oggtarget) 2> START RT1

启动source投递进程

GGSCI (node1.localdomain) 3> START DP1

确认source进程状态

GGSCI (node1.localdomain) 4> INFO ALL

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING

EXTRACT     RUNNING     DP1         00:00:00      00:00:08

EXTRACT     RUNNING     EX1         00:00:00      00:00:03

确认target进程状态

GGSCI (oggtarget) 3> INFO ALL

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING

REPLICAT    RUNNING     RT1         00:00:00      00:00:02

源端节点node1插入数据

SNOW@devdb1 >insert into t1 values(1,'SNOW’);

SNOW@devdb1 >commit;

源端节点node2插入数据

SNOW@devdb2 >insert into t1 values(2,'LILY');

SNOW@devdb2 >commit;

复制端验证

SNOW@oggtarget >select * from t1;

ID NAME

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

1 SNOW

2 LILY

实验结束。

Oracle GoldenGate是一个轻量级软件,在Oracle数据库上安装配置是一种松耦合的状态,这点非常理想。无论是在单实例环境还是多实例的RAC环境只需要做少量的配置就可以生效,软件的启动和关闭也不需要数据库做任何设置。从安装的角度来说,比DataGuard要轻便的多。DataGuard是一种“侵入式”配置。需要修改Oracle本身的配置文件。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值