linux下gate版本管理,Linux安装使用GoldenGate

如何安装使用goldengate

一.环境:

OS:linux CentOS_Final_5.5(64bit)

DB:oracle11gR2(单机模式)

goldengate: ggs_Linux_x64_ora11g_64bit_v11_1_1_0_0_078.tar

网络:局域网,源端IP 192.168.128.100  镜像端IP  192.168.128.101

二.目标:

实现源端到镜像端的数据同步(单向)

三.源端数据库实施:

1数据库准备

1.1开启数据库归档日志

查看数据库当前日志模式

archive log list;

更改为归档模式

shutdown immediate;

start mount;

alter database archivelog;

alter database open;

开启第二归档路径(可选)

alter system set log_archive_dest_2=’location=/archive_2OPTIONAL’ scope=spfile;

alter system archive log start tolog_archive_dest_2;

查看第二归档日志是否生效(重启数据库)

show parameter archive;

1.2开启supplemental logging和force logging

查看当前数据库是否开启supplementallogging

select SUPPLEMENTAL_LOG_DATA_MIN fromv$database;

开启数据库级别的最小supplementallogging

alter database add supplemental log data;

查看当前数据库forcelogging的状态

select force_logging from v$database;

开启forcelogging

alter database force logging;

1.3创建goldengate管理用户,并赋予相关权限

创建管理用户的表空间

create tablespace tbs_ggmgr datafiel ‘/u01/app/oracle/goldengate/ggmgr.dbf’size 50M autoextend on;

创建goldengate管理用户

create user ggmgr identified by oracledefault tablespace tbs_ggmgr temporary tablespace TEMP quota unlimited ontbs_ggmgr;

赋予ggmgr相关权限(想简单的话,可以赋予DBA权限)

grant CONNECT,RESOURCE to ggmgr;

grant CREATE SESSION,ALTER SESSION toggmgr;

grant SELECT ANY DICTIONARY,SELECT ANYTABLE to ggmgr;

grant CREATE TABLE,ALTER ANY TABLE to ggmgr;

1.4创建测试用户和表

create user test identified by test;

conn test/test;

create table test(

stuid number(8),

stuname varchar2(20),

stupasswd varchar2(20)

);

insert into test values(1,’test1’,’test1);

insert into test values(2,’test2’,’test2’);

commit;

2goldengate安装及参数设置

2.1设置goldengate运行所需的环境变量

编辑oracle的home目录下.bash_profile文件

vi .bash_profile

添加如下内容

exportLD_LIBRARY_PATH=$ORACLE_BASE/goldengate:$ORACLE_HOME/lib

2.2创建goldengate安装目录

通常将goldengate安装在ORACLE_BASE目录下

mkdir –p /u01/app/oracle/goldengate/

2.3解压并初始化goldengate

将goldengate压缩文件解压到goldengate得安装目录

tar vxf ggs_Linux_x64_ora11g_64bit_v11_1_1_0_0_078.tar

执行./ggsci进入GGSCI

创建目录结构

create subdirs  --只在第一次启动执行

2.4 添加trandata

在GGSCI中

dbloign userid ggmgr,password oracle

对要进行复制的表添加表级supplemental logging

add trandata test.*

查看

info trandata test.*

2.5添加并配置mgr进程

edit param mgr

添加如下内容

port 7809

purgeoldextracts ./dirdat/*,usecheckpoints, minkeepfiles 20

2.6添加并配置extract进程

添加一个extract进程

add extract exts100,tranlog,begin now

给extract进程指定trail文件

add exttrail ./dirdat/s1,extract exts100,megabytes 100

配置extract的参数

edit param exts100

添加如下内容(开启第二归档的情况下)

extract exts100

userid ggmgr,password oracle

tranlogoptions archivedlogonly

tranlogoptions altarchivelogdest instanceorcl /archive_2

tranlogoptions altarchivedlogformat%t_%s_%r.dbf

gettruncates

reportcount every 30 minutes,rate

discardfile./dirrpt/exts100.dsc,APPEND,MEGABYTES 100

exttail ./dirdat/s1

table TEST.TEST;

2.7添加并配置pump进程

add extract dps100 exttrailsource./dirdat/s1

add rmttrail ./dirdat/t1,extract dps100

配置pump进程参数

edit param dps100

extract dps100

userid ggmgr,password oracle

rmthost 192.168.128.101,mgrport7809,compress

numfiles 5000

DYNAMICRESOLUTION

rmttrail ./dirdat/t1

table TEST.TEST;

2.8检查进程是否能够成功启动

start

start mgr

start exts100

start dps100

查看进程状态

info all

四.镜像端数据库的初始化

1.从源端数据库导出相关的数据和表结构(需要相关权限,可以使用有DBA权限的用户)

exp username/password file=test_1203013.dmpowner=test triggers=n indexes=n log=test_120313.log;

2.将导出的数据文件传到镜像端

可以使用ftp

3.在镜像端创建和源端对应的用户和表空间,要保持表空间的名字一致

create user test identified by test;

4.在镜像端导入数据文件(需要相关权限,可以使用有DBA权限的用户)

imp username/password file=test_120313.dmpfromuser=test touser=test log=test_120313.log;

查看数据是否导入成功

五.镜像端数据库实施

1数据库准备

创建管理用户的表空间

create tablespace tbs_ggmgr datafiel ‘/u01/app/oracle/goldengate/ggmgr.dbf’size 50M autoextend on;

创建goldengate管理用户

create user ggmgr identified by oracledefault tablespace tbs_ggmgr temporary tablespace TEMP quota unlimited ontbs_ggmgr;

赋予ggmgr相关权限(想简单的话,可以赋予DBA权限)

grant CONNECT,RESOURCE to ggmgr;

grant CREATE SESSION,ALTER SESSION toggmgr;

grant SELECT ANY DICTIONARY,SELECT ANYTABLE to ggmgr;

grant CREATE TABLE to ggmgr;

2goldengate安装及参数设置

2.1.设置goldengate运行所需的环境变量

编辑oracle的home目录下.bash_profile文件

vi .bash_profile

添加如下内容

exportLD_LIBRARY_PATH=$ORACLE_BASE/goldengate:$ORACLE_HOME/lib

2.2.创建goldengate安装目录

通常将goldengate安装在ORACLE_BASE目录下

mkdir –p /u01/app/oracle/goldengate/

2.3.解压并初始化goldengate

将goldengate压缩文件解压到goldengate得安装目录

tar vxf ggs_Linux_x64_ora11g_64bit_v11_1_1_0_0_078.tar

执行./ggsci进入GGSCI

创建目录结构

create subdirs  --只在第一次启动执行

2.4编辑全局参数文件

dblogin userid ggmgr,password oracle

edit params ./GLOBALS

添加如下内容

checkpointtable ggmgr.ogg_checkpointtable

添加检查点表

add checkpointtableggmgr.ogg_checkpointtable

2.5.添加并配置mgr进程

edit param mgr

添加如下内容

port 7809

(这里没有加入清除trail文件的设置)

2.6.添加并配置replicat进程

add replicat rept101,exttrail ./dirdat/t1

编辑replicat进程的参数文件

edit param rept101

添加如下内容

replicat rept101

userid ggmgr,password oracle

ASSUMETARGETDEFS

DISCARDFILE ./dirrpt/rept101.dsc,PURGE

MAP TEST.TEST, TARGET TEST.TEST;

2.7检查进程能否成功启动

start

start mgr

start rept101

查看进程状态

info all

六.测试

1.在源端数据库插入数据

insert into test values(3,’test3,’test3’);

commit;

2.生成归档日志

alter system switch logfile;

3.查看镜像端数据库

select * from test;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/338169.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言中的“三字母词”坑了工程师

某软件工程师接盘了前同事的项目,进度一拖再拖,最后发现问题出现在如下代码:// 注释语句 ??/2a b c;请注意代码中的“??/”,就是这注释隐藏的很深,让项目一拖再拖。"??/"会被编译器当作 /&#xff0c…

guice 实例_使用Google Guice消除实例之间的歧义

guice 实例如果接口有多个实现,则Google guice提供了一种精巧的方法来选择目标实现。 我的示例基于Josh Long ( starbuxman )的出色文章,内容涉及Spring提供的类似机制。 因此,请考虑一个名为MarketPlace的接口&#…

linux uboot 源码分析,UBoot源码分析1.pdf

UBoot源码分析1• UBoot源码解析(一)主要内容• 分析UBoot是如何引导Linux内核• UBoot源码的一阶段解析BootLoader概念• Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而…

C 线程的使用~(下)

2.3 detach()detach() 函数的作用是进行线程分离,分离主线程和创建出的子线程。在线程分离之后,主线程退出也会一并销毁创建出的所有子线程,在主线程退出之前,它可以脱离主线程继续独立的运行,任务执行完毕之后&#x…

javafx有布局管理器吗_JavaFX技巧17:带有AnchorPane的动画工作台布局

javafx有布局管理器吗最近,我不得不为应用程序实现一个布局,其中可以根据用户是否登录来隐藏或显示菜单区和状态区,并通过滑入/滑出动画显示该区域。 以下视频显示了实际的布局: 过去,我可能会使用自定义控件和自定义…

linux双wan网关负载均衡,Csico2951路由器,如何做到双WAN口负载均衡?

Router2800(config-if)#ip addressY.Y.Y.Y 255.255.255.252(Y为移动地址)Router2800(config-if)#ip nat ouosideRouter2800(config-if)#no shutdownRouter (config)#ip dns serverRouter (config)#ip name-server A.A.A.A B.B.B.B(A为电信解析地址,B为移动解析地址)…

用c语言编写爱心的代码是什么

用c语言编写爱心的代码&#xff1a;输入完整代码如下&#xff1a;#include int main(void){float a,x,y;for(y1.5f; y>-1.5f; y-0.1f){for(x-1.5f; x<1.5f; x 0.05f){a x*x y*y-1;char ch a*a*a-x*x*y*y*y<0.0f?*: ; putchar(ch); }printf("\n");}retur…

c++ lambda 重载_您会后悔对Lambdas应用重载!

c lambda 重载编写好的API很难。 非常辛苦。 如果您希望用户喜欢您的API&#xff0c;则必须考虑很多事情。 您必须在以下两者之间找到适当的平衡&#xff1a; 用处 易用性 向后兼容 前向兼容性 之前&#xff0c;在我们的文章&#xff1a; 如何设计良好的常规API中&#xf…

linux1到10累加,10个有趣的 Linux 命令

在终端工作是一件很有趣的事情。今天&#xff0c;我们将会列举一些有趣得为你带来欢笑的Linux命令。1. rev创建一个文件&#xff0c;在文件里面输入几个单词&#xff0c;rev命令会将你写的东西反转输出到控制台。# revSelection_002Selection_0012. fortune这个命令没有被默认安…

7个华为关于C语言的经典面试题

1、找错void test1(){ char string[10]; char* str1"0123456789"; strcpy(string, str1);}这里string数组越界&#xff0c;因为字符串长度为10&#xff0c;还有一个结束符’\0’。所以总共有11个字符长度。string数组大小为10&#xff0c;这里越界了。PS&am…

java8 函数式编程_Java 8函数式编程:延迟实例化

java8 函数式编程单例通常会延迟实例化自己&#xff0c;有时&#xff0c;如果对象足够重&#xff0c;则可以延迟实例化类字段。 通常&#xff0c;在走惰性路线时&#xff0c;getter方法&#xff08;或accessor &#xff09;必须具有一段代码&#xff0c;该代码块在返回对象之前…

linux数组操作 增删改查,linuxea:go数组与数组增删改查(19)

复合数据类型是集合类&#xff0c;并且可以存储多个单值。在golang中存储的数组是相同的数据类型&#xff0c;并且长度也是其中的一个属性。在go中&#xff0c;数组的长度一旦定义&#xff0c;就不可变。如果声明了长度的变量&#xff0c;只能赋值相同的长度的数组数组是具有相…

C语言的特点与创建的基本步骤是什么

C语言的特点与创建的基本步骤是&#xff1a;C 语言特点&#xff1a;1.C语言是一种成功的系统描述语言&#xff0c;用C语言开发的UNIX操作系统就是一个成功的范例;2.同时C语言又是一种通用的程序设计语言&#xff0c;在国际上广泛流行。世界上很多著名的计算公司都成功的开发了不…

谷歌guava_Google Guava:您永远不会知道的5件事

谷歌guava每个开发人员可以使用哪些鲜为人知的Google Guava功能&#xff1f; 它是那里最受欢迎的库之一&#xff0c;它是开源的&#xff0c;您可能已经知道了&#xff0c;它来自人们玩Quidditch作为一项真正的运动的地方&#xff08;至少在The Internship上 &#xff09;。 它…

c语言中prime的作用,C语言判断素数prime

《C语言判断素数prime》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《C语言判断素数prime(2页珍藏版)》请在人人文库网上搜索。1、主函数&#xff1a;#include int prime();void main()int number;int flag;printf (请输入一个大于1的整数:);scanf (%d,&number)…

C语言strcmp函数用法

C语言strcmp函数用法strcmp函数语法为“int strcmp(char *str1,char *str2)”&#xff0c;其作用是比较字符串str1和str2是否相同&#xff0c;如果相同则返回0&#xff0c;如果不同&#xff0c;前者大于后者则返回1&#xff0c;否则返回-1。简单示例&#xff1a;char a[]"…

Linux C 服务器端这条线怎么走?

在校学生的编程语言和数据结构的基础还不错&#xff0c;我认为应该在《操作系统》和《计算机体系结构》这两门课上下功夫&#xff0c;然后才去读编程方面的 APUE、UNP 等书。下面简单谈谈我对学习这两门课的看法和建议&#xff0c;都是站在服务端程序员的角度&#xff0c;从实用…

tp3 默认模块 默认方法_您需要了解的有关默认方法的所有信息

tp3 默认模块 默认方法因此&#xff0c;默认方法是……昨天的新闻&#xff0c;对不对&#xff1f; 是的&#xff0c;但是使用了一年之后&#xff0c;积累了很多事实&#xff0c;我想将这些事实收集在一个地方&#xff0c;供刚开始使用它们的开发人员使用。 甚至有经验的人都可以…

熟悉c语言,实验一 熟悉C语言的运行环境

《实验一 熟悉C语言的运行环境》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《实验一 熟悉C语言的运行环境(8页珍藏版)》请在人人文库网上搜索。1、实验一 熟悉C语言的运行环境一、 实验目的1. 熟悉C语言运行环境。2. 掌握语言程序的书写格式和语言程序的结构。3. 掌…

存储过程 锁定并发_Java并发教程–锁定:显式锁定

存储过程 锁定并发1.简介 在许多情况下&#xff0c;使用隐式锁定就足够了。 有时&#xff0c;我们将需要更复杂的功能。 在这种情况下&#xff0c; java.util.concurrent.locks包为我们提供了锁定对象。 当涉及到内存同步时&#xff0c;这些锁的内部机制与隐式锁相同。 区别在于…