前言

Goldengate再rac 环境部署,和单机部署区别还是有点大,主要存在环境上.

环境

oracle10g ,sid=rac

准备工作

1.在rac节点,配置监听动态注册,确保goldengate用户能够连接实例。安装部分分为源端和目标端

节点一配置:

[oracle@rac1 admin]$ cat listener.ora
# listener.ora.rac1 Network Configuration File: /opt/oracle//db_1/network/admin/listener.ora.rac1
# Generated by Oracle configuration tools. LISTENER_RAC1 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = )(IP = FIRST))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.141)(PORT = )(IP = FIRST))
)
) SID_LIST_LISTENER_RAC1 =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /opt/oracle//db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = +ASM)
(ORACLE_HOME = /opt/oracle//db_1)
(SID_NAME = +ASM1)
)
)
[oracle@rac1 admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /opt/oracle/102/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools. RAC =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = rac)
)
) LISTENERS_RAC =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1521))
) RAC2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = rac)
(INSTANCE_NAME = rac2)
)
) RAC1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = rac)
(INSTANCE_NAME = rac1)
)
) EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
) ASM =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.141)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = +ASM)
(SID_NAME = +ASM1)
)
)

节点二相同配置,记得修改对应参数

重启监听

[oracle@rac1 admin]$ srvctl stop listener -n rac1
[oracle@rac1 admin]$ srvctl stop listener -n rac2
[oracle@rac1 admin]$ srvctl start listener -n rac1
[oracle@rac1 admin]$ srvctl start listener -n rac2

检查asm实例

[oracle@rac1 admin]$ export ORACLE_SID=+ASM1
[oracle@rac1 admin]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.1. - Production on Thu Jun :: Copyright (c) , , Oracle. All rights reserved. Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1. - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options SQL> conn sys/@192.168.1.142:/+ASM as sysdba
Connected.

源端:

2.安装 Goldengate

tar xvf xxxxxx.tar.gz

cd xxxx

[oracle@rac1 oracle]$ ./ggsci
GGSCI (rac1) > create subdirs

[oracle@gg gg]$ ./ggsci

配置gg的mgr端口,目标端也需要做同样的配置

GGSCI (gg) 5> edit param mgr
GGSCI (gg) 5> view param mgr
port 7809
GGSCI (gg) 5> start mgr
GGSCI (gg) 5> info mgr

--安装完毕

3.数据库的环境准备,需添加附加日志

原数据库Oracle
----》alter database add supplemental log data; //添加附加信息
Alter system switch logfile;
查看 select supplemental_log_data_min from v$database; 必须是yes

4.Goldengate同步用户,我默认用system,避免权限纠结..

5.进入./ggsci 打开要同步的表的附件日志信息

GGSCI (rac1) > dblogin userid system@rac1,password
或者
GGSCI (rac1) 3> dblogin userid system@192.168.1.141:/rac,password 111111
--添加附加日志的表
Add trandata gg.t1 或 gg.*

6.此步骤添加抓取进程,和传输进程,wan代表抓取进程,pwan代表传输进程

GGSCI (rac1) 8> edit param wan
GGSCI (rac1) 8> view param wan
EXTRACT WAN
USERID wan@192.168.1.141:1521/rac,PASSWORD wan --登录的用户
TRANLOGOPTIONS ASMUSER sys@ASM,ASMPASSWORD 111111 --登录asm的
EXTTRAIL ./dirdat/et --抓取的数据放这里
TABLE wan.t1; --抓取的表 GGSCI (rac1) 8> Add Extract wan, TranLog, Begin Now threads 2 --rac有几个threads 2 就写几个
GGSCI (rac1) 8> Add ExtTrail ./dirdat/et, Extract wan, Megabytes 5 --建立./dirdat/et文件为5m GGSCI (rac1) 10> edit param pwan
GGSCI (rac1) 11> view param pwan
EXTRACT pwan
RMTHOST 192.168.1.105,MGRPORT 7809,COMPRESS --传输给目标数据库服务器
RMTTRAIL ./dirdat/ww --远程目标存放的数据文件
passthru
TABLE wan.t1; GGSCI (rac1) 11> Add Extract pwan, ExtTrailSource ./dirdat/et --传输进程pwan,提取的数据文件路径
GGSCI (rac1) 11> Add RmtTrail ./dirdat/ab, Extract psalesab, Megabytes 5 --建立目标数据库的数据文件./dirdat/ab为5m
GGSCI (rac1) > start extract *  --启动建立好的进程
GGSCI (rac1) > info all Program Status Group Lag Time Since Chkpt MANAGER RUNNING
EXTRACT RUNNING PWAN :: ::
EXTRACT RUNNING WAN :: ::
view report wan log  --如果不能启动,用此命令查看日志

目标端

说明:目标端创建个写入进程,我命名为rwan

1.安装 Goldengate

tar xvf xxxxxx.tar.gz

cd xxxx

[oracle@rac1 oracle]$ ./ggsci
GGSCI (rac1) 2> create subdirs

[oracle@gg gg]$ ./ggsci

配置gg的mgr端口,源端也需要做同样的配置

GGSCI (gg) > edit param mgr
GGSCI (gg) > view param mgr
port
GGSCI (gg) > start mgr
GGSCI (gg) > info mgr

配置检查数据一致性的表

编辑全局数据文件   //添加检查数据一致性的表
Edit params ./GLOBALS
CHECKPOINTTABLE system.checkpointtable
保存
创建表
Dblogin userid system, password oracle
Add checkpointtable

添加rwan配置文件

GGSCI (gg) > view param rwan

replicat rwan
userid system,password
HANDLECOLLISIONS
ASSUMETARGETDEFS
--ddl include all
--ddlerror default ignore retryop
discardfile ./dirrpt/rwan.dsc,append
map wan.t1, target chis.t1;

添加rwan进程

GGSCI (gg) 8> Add Replicat rwan, ExtTrail ./dirdat/ww

启动 start replicat rwan

GGSCI (gg) 9> info all

Program     Status      Group       Lag           Time Since Chkpt

MANAGER     RUNNING                                           

REPLICAT    RUNNING     RWAN        00:00:00      00:00:07

到此就配置成功了。

总结

源端数据库对某表,做了dll操作,目标端已打补丁的方式添加,添加后,需对rwan进程重启一次。

再配置过程中参考了如下文章:

https://blogs.oracle.com/imc/entry/oracle_goldengate_configuring_ddl_replication

http://www.ibmdba.com/?p=129

http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/goldengate/11g/orcl_orcl/index.html

Goldengate 部署oracle10g在 rac asm环境,完整教程的更多相关文章

  1. 【前端福利】用grunt搭建自动化的web前端开发环境-完整教程

    jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发人员,如果你现在还不知道grunt或者听说过 ...

  2. 转:【前端福利】用grunt搭建自动化的web前端开发环境-完整教程

    原文地址:http://blog.csdn.net/wangfupeng1988/article/details/46418203 jQuery在使用grunt,bootstrap在使用grunt,百 ...

  3. 用grunt搭建自动化的web前端开发环境-完整教程

    原稿:http://www.cnblogs.com/wangfupeng1988/p/4561993.html#!comments jQuery在使用grunt,bootstrap在使用grunt,百 ...

  4. 【前端福利】用grunt搭建自己主动化的web前端开发环境-完整教程

    jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发者.假设你如今还不知道grunt或者听说过. ...

  5. 转: 【前端福利】用grunt搭建自动化的web前端开发环境-完整教程

    http://blog.csdn.net/wangfupeng1988/article/details/46418203

  6. ORACLE10g R2【RAC+ASM→RAC+ASM】

    ORACLE10g R2[RAC+ASM→RAC+ASM] 本演示案例所用环境:RAC+ASM+OMF   primary standby OS Hostname node1,node2 dgnode ...

  7. ORACLE10g R2【RAC+ASM→单实例FS】

    ORACLE10g R2[RAC+ASM→单实例FS] 10g R2 RAC+ASMà单实例FS的DG,建议禁用OMF. 本演示案例所用环境:   primary standby OS Hostnam ...

  8. Kubernetes容器集群管理环境 - 完整部署(中篇)

    接着Kubernetes容器集群管理环境 - 完整部署(上篇)继续往下部署: 八.部署master节点master节点的kube-apiserver.kube-scheduler 和 kube-con ...

  9. Kubernetes容器集群管理环境 - 完整部署(下篇)

    在前一篇文章中详细介绍了Kubernetes容器集群管理环境 - 完整部署(中篇),这里继续记录下Kubernetes集群插件等部署过程: 十一.Kubernetes集群插件 插件是Kubernete ...

随机推荐

  1. MySQL Authentication plugin 'caching_sha2_password' cannot be loaded

    很多用户在使用Navicat Premium 12连接MySQL数据库时会出现Authentication plugin 'caching_sha2_password' cannot be loade ...

  2. python的转义字符,以及字符串输出转义字符

    Python的转义字符及其含义     符    号     说     明       \'   单引号       \"   双引号       \a   发出系统响铃声       \ ...

  3. JavaSE---JDK提供的命令行工具---javap

    1.javap 1.1 javap是JDK自带的反解析工具: 1.2 作用:就是根据class字节码文件,反解析出    当前类   对应的code区(汇编指令).本地变量表.异常表和代码行偏移量映射 ...

  4. 使用IDEA进行commit合并(折叠)

    当前有,test1,test2两个commit,想把这两个分支合成一个commit去提交代码 将T1C修改的代码,与T2C修改的代码合并,合成一个commit作为提交 这样二个commit就合并成一个 ...

  5. IOC(控制反转)和DI(依赖注入)

    IOC(控制反转): 那么IoC是如何做的呢?有点像通过婚介找女朋友,在我和女朋友之间引入了一个第三者:婚姻介绍所.婚介管理了很多男男女女的资料,我可以向婚介提出一个列表,告诉它我想找个什么样的女朋友 ...

  6. sql 用语句还原多数据文件的数据库

    /* 还原bak数据库文件*/ RESTORE DATABASE userdb_cs /*还原为userdb名的新数据库*/ FROM DISK = 'D:\工作资料\数据库文件\userdb.bak ...

  7. 如何隐藏一个让人很难发现的bug?

    程序员的日常三件事:写bug.改bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因为我的眼里常含bug. 那么如何写出一个让(坑)人(王)很(之)难(王)发现的bug呢? - 1 - 新手开发 ...

  8. ES6中类Class的super关键字

    super 关键字,既可以当作函数使用,也可以当作对象使用.在这两种情况下,它的用法完全不同. 1.super当做函数使用 super 作为函数调用时,代表父类的构造函数.ES6 要求,子类的构造函数 ...

  9. Pangu and Stones HihoCoder - 1636 区间DP

    Pangu and Stones HihoCoder - 1636 题意 给你\(n\)堆石子,每次只能合成\(x\)堆石子\((x\in[L, R])\),问把所有石子合成一堆的最小花费. 思路 和 ...

  10. 2018年最新Java面试题及答案整理(持续完善中…)

    2018年最新Java面试题及答案整理(持续完善中…) 基础篇 基本功 面向对象特征 封装,继承,多态和抽象 封装封装给对象提供了隐藏内部特性和行为的能力.对象提供一些能被其他对象访问的方法来改变它内 ...