使用变量替换批量部署GoldenGate
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的更多相关文章
- Office 365 系列二 ------- 如何批量部署Office 客户端
针对于第一篇文章所讲的,我们最用使用用户可以单个点击进行安装,但是如果我们终端用户太多的情况,不可能大家都点击单个文件进行安装了,这样子既耗费时间也耗费 公司的网络带宽,那么我们可以采取离线下载的方式 ...
- Cobbler自动化批量部署CentOS6.5系统
Cobbler作为一个预备工具,使批量部署Red Hat/Centos/Fedora系统更容易,同时也支持Suse和Debian系统的部署. 它提供以下服务集成: * PXE服务支持 * DHCP服务 ...
- centos7使用cobbler(2.8)批量部署操作系统之一
一. 批量部署操作系统的前提 要想批量部署操作系统,得具备以下条件: 客户机支持pxe网络引导 服务器端和客户端建立网络通信(DHCP) 服务器端要有可供客户机开机引导的引导文件 服务器端的可引 ...
- 自学Zabbix9.4 zabbix low-level discover底层发现(zabbix批量部署必备)
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix9.4 zabbix low-level discover底层发现(zabbix批 ...
- 批量部署Hadoop集群环境(1)
批量部署Hadoop集群环境(1) 1. 项目简介: 前言:云火的一塌糊涂,加上自大二就跟随一位教授做大数据项目,所以很早就产生了兴趣,随着知识的积累,虚拟机已经不能满足了,这次在服务器上以生产环境来 ...
- Ansible批量部署工具
Ansible:自动化运维工具 你需要在一台机器上yum install 一个包,这时候有一个需求,比如现在有5台机同时需要装apache这个包,那么100台呢,ssh上去就太慢了,这时候就借助到了a ...
- 使用Playbook批量部署多台LAMP环境
1. 安装ansible yum install epel-release -y yum install ansible -y Playbook是一个不同于使用ansible命令行执行方式的模式,功能 ...
- SSH批量部署服务
SSH批量部署服务 1.1在NFS上作为中心分发服务器将私钥分发到其他服务器上 1.1.1NFS部署 [root@nfs-server ~]# useradd zhurui [root@nfs-ser ...
- Oracle的SQL语句中的变量替换
一.问题描述 如下SQL: INSERT INTO tmp(val)VALUES('a&b'); 执行过程中会出现如下提示: 点击"确定"过后我们查看表中的数据: b后面的 ...
随机推荐
- 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 实现连接点 ...
- 【转】 简单理解Socket
题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人:但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有 ...
- ARPG客户端中场景对象体系设计
一.场景对象体系 二.场景对象生命周期管理 场景对象的生命周期,不适合采用原始的c++管理方式, 即由使用者自己负责删除.而应该采用引用计数方式, 自动负责删除. 采用引用计数方式, 目前用法比较广的 ...
- English word
第一部分 通过词缀认识单词 (常用前缀一) 1.a- ①加在单词(形容词)或词根前面,表示"不,无,非" acentric [ə'sentrik] a 无中心的(a+centr ...
- data structure
转载请注明出处: 我所遇见的世界会更美好 我曾经逢人就说总是遇到这样那样错误无法解决,但是这些问题只要静下心来仔细思考根本没有解决不了的问题. 其实明明,超级超级简单,然而被老师讲的天花乱坠, 栈: ...
- hdu 4548 筛法求素数 打表
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4548 Problem Description 小明对数的研究比较热爱,一谈到数,脑子里就涌现出好多数的问题 ...
- selenium+python笔记11
#!/usr/bin/env python # -*- coding: utf-8 -*- """ @desc: search in mail box "&qu ...
- hdu-----(2807)The Shortest Path(矩阵+Floyd)
The Shortest Path Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- WEB前端性能优化:HTML,CSS,JS和服务器端优化
对前端开发工程师来说,前端性能优化的重要性是不言而喻的,最为大家所知的是YSLOW的23条优化规则,在我的理解中,性能优化不纯粹是指用户访问网站的速度,也包括开发的效率,这里我总结下我理解中的WEB前 ...
- 解决li在ie,firefox中行高不一致问题
转载 http://www.cnblogs.com/jikey/archive/2011/11/13/2247543.html li在ie与firefox的高度是不一样的,解决办法是li font-s ...