GoldenGate运行时允许在参数文件中动态指定一个值,即在参数文件中使用一个变量,而不是一个静态的值,当启动OGG进程时,根据环境动态加载此变量的值,达到在不同环境中,通过变量定义,实现多个环境的相同配置部署。对于一对多或多对一的场景,此配置可以降低维护的复杂性。

如下,是一个标准的data pump参数设置:

extract peast

rmthost oelora114, mgrport 15051

rmttrail ./dirdat/pe

passthru

table east.*;

在上面的参数中,我们将目标端主机、端口、远端队列文件前缀等都写死在了配置文件中,但如果我们要从开发环境迁移到测试环境,或继续迁移到生产环境,是否又把参数文件重改一遍呢?这还只是只有几台主机的环境,如果有几十台或上百台呢,维护量和保持一致性就是个大问题。此时,使用参数变量化将可以解决此问题。

下面,我们修改data pump进程为:

extract peast

rmthost ?OGGTarget, mgrport ?OGGListener

rmttrail ?TrailPIEAST

passthru

table ?PIEASTList;

? 表示此单词对应的是一个变量,当OGG启动进程时,OGG将从操作系统的环境变量中获取值,如果操作系统中没有创建这些环境变量,OGG进程将会abended.

下面是本文示例中设置的环境变量:

[oracle@oelora114 ~]$ echo $OGGTarget $OGGListener $TrailPIEAST $PIEASTList

oelora114 15051 ./dirdat/pe east.*

为了让变量替换生效,输入GGSCI进入命令行,如果MGR进程在环境变量设置之前启动,则需要重启MGR进程,这样才能保证环境变量的值能获取到。

GGSCI (oelora114) 3> stop mgr !

Sending STOP request to MANAGER ...

Request processed.

Manager stopped.

GGSCI (oelora114) 4> start mgr

Manager started.

GGSCI (oelora114) 5> start peast

Sending START request to MANAGER ...

EXTRACT P_IEAST starting

GGSCI (oelora114) 6> status peast

EXTRACT P_IEAST: RUNNING

如果查看pump进程的日志报告,可以看到变量已经被替换设置的值:

GGSCI (oelora114) 7> view report peast

***********************************************************************

Oracle GoldenGate Capture for Oracle

Version 12.1.2.0.0 17185003 OGGCORE_12.1.2.0.0_PLATFORMS_130924.1316_FBO

Linux, x64, 64bit (optimized), Oracle 11g on Sep 25 2013 00:44:16

Copyright (C) 1995, 2013, Oracle and/or its affiliates. All rights reserved.

Starting at 2014-04-08 10:00:41

***********************************************************************

Operating System Version:

Linux

Version #1 SMP Wed Jul 17 10:58:36 PDT 2013, Release 2.6.32-400.29.2.el5uek

Node: oelora114

Machine: x86_64

soft limit   hard limit

Address Space Size   :    unlimited    unlimited

Heap Size            :    unlimited    unlimited

File Size            :    unlimited    unlimited

CPU Time             :    unlimited    unlimited

Process id: 11136

Description:

***********************************************************************

**            Running with the following parameters                  **

***********************************************************************

2014-04-08 10:00:41 INFO    OGG-03059 Operating system character set identified as UTF-8.

2014-04-08 10:00:41 INFO    OGG-02695 ANSI SQL parameter syntax is used for parameter parsing.

extract peast

rmthost oelora114, mgrport 15051

?OGGTarget = oelora114

?OGGListener = 15051

rmttrail ./dirdat/pe

?TrailPIEAST = ./dirdat/pe

passthru

table east.*;

?PIEASTList = east.*

在上面的日志中,可以看到变量已经被替换为当前操作系统中的环境变量对应的值。

使用变量替换部署OGG的好处是在大批量的数据复制环境中,可以使用同一参数文件,通过环境变量来适应不同的主机,提升了维护性,也便于批量拷贝部署。

使用变量替换批量部署GoldenGate的更多相关文章

  1. Office 365 系列二 ------- 如何批量部署Office 客户端

    针对于第一篇文章所讲的,我们最用使用用户可以单个点击进行安装,但是如果我们终端用户太多的情况,不可能大家都点击单个文件进行安装了,这样子既耗费时间也耗费 公司的网络带宽,那么我们可以采取离线下载的方式 ...

  2. Cobbler自动化批量部署CentOS6.5系统

    Cobbler作为一个预备工具,使批量部署Red Hat/Centos/Fedora系统更容易,同时也支持Suse和Debian系统的部署. 它提供以下服务集成: * PXE服务支持 * DHCP服务 ...

  3. centos7使用cobbler(2.8)批量部署操作系统之一

    一.    批量部署操作系统的前提 要想批量部署操作系统,得具备以下条件: 客户机支持pxe网络引导 服务器端和客户端建立网络通信(DHCP) 服务器端要有可供客户机开机引导的引导文件 服务器端的可引 ...

  4. 自学Zabbix9.4 zabbix low-level discover底层发现(zabbix批量部署必备)

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix9.4 zabbix low-level discover底层发现(zabbix批 ...

  5. 批量部署Hadoop集群环境(1)

    批量部署Hadoop集群环境(1) 1. 项目简介: 前言:云火的一塌糊涂,加上自大二就跟随一位教授做大数据项目,所以很早就产生了兴趣,随着知识的积累,虚拟机已经不能满足了,这次在服务器上以生产环境来 ...

  6. Ansible批量部署工具

    Ansible:自动化运维工具 你需要在一台机器上yum install 一个包,这时候有一个需求,比如现在有5台机同时需要装apache这个包,那么100台呢,ssh上去就太慢了,这时候就借助到了a ...

  7. 使用Playbook批量部署多台LAMP环境

    1. 安装ansible yum install epel-release -y yum install ansible -y Playbook是一个不同于使用ansible命令行执行方式的模式,功能 ...

  8. SSH批量部署服务

    SSH批量部署服务 1.1在NFS上作为中心分发服务器将私钥分发到其他服务器上 1.1.1NFS部署 [root@nfs-server ~]# useradd zhurui [root@nfs-ser ...

  9. Oracle的SQL语句中的变量替换

    一.问题描述 如下SQL: INSERT INTO tmp(val)VALUES('a&b'); 执行过程中会出现如下提示: 点击"确定"过后我们查看表中的数据: b后面的 ...

随机推荐

  1. ActiveX控件(ATL篇)

    目录 第1章 VC++6.0创建    2 1.1 目标    2 1.2 创建项目    2 1.3 增加COM类    4 1.4 属性    7 1.5 事件    8 1.6 实现连接点    ...

  2. 【转】 简单理解Socket

    题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人:但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有 ...

  3. ARPG客户端中场景对象体系设计

    一.场景对象体系 二.场景对象生命周期管理 场景对象的生命周期,不适合采用原始的c++管理方式, 即由使用者自己负责删除.而应该采用引用计数方式, 自动负责删除. 采用引用计数方式, 目前用法比较广的 ...

  4. English word

    第一部分  通过词缀认识单词 (常用前缀一) 1.a- ①加在单词(形容词)或词根前面,表示"不,无,非" acentric [ə'sentrik] a  无中心的(a+centr ...

  5. data structure

    转载请注明出处: 我所遇见的世界会更美好 我曾经逢人就说总是遇到这样那样错误无法解决,但是这些问题只要静下心来仔细思考根本没有解决不了的问题. 其实明明,超级超级简单,然而被老师讲的天花乱坠, 栈: ...

  6. hdu 4548 筛法求素数 打表

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=4548 Problem Description 小明对数的研究比较热爱,一谈到数,脑子里就涌现出好多数的问题 ...

  7. selenium+python笔记11

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ @desc: search in mail box "&qu ...

  8. hdu-----(2807)The Shortest Path(矩阵+Floyd)

    The Shortest Path Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  9. WEB前端性能优化:HTML,CSS,JS和服务器端优化

    对前端开发工程师来说,前端性能优化的重要性是不言而喻的,最为大家所知的是YSLOW的23条优化规则,在我的理解中,性能优化不纯粹是指用户访问网站的速度,也包括开发的效率,这里我总结下我理解中的WEB前 ...

  10. 解决li在ie,firefox中行高不一致问题

    转载 http://www.cnblogs.com/jikey/archive/2011/11/13/2247543.html li在ie与firefox的高度是不一样的,解决办法是li font-s ...