开发者社区> 技术小美> 正文

linux下单节点oracle数据库间ogg搭建

简介:
+关注继续查看

环境说明:   linux为Linux 2.6.32-573.el6.x86_64     oracle为 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

                 ogg为 ogg112101_fbo_ggs_Linux_x64_ora11g_64bit

技术背景:

 

 

 

说明:  goldengate为ogg管理用户                 oggdemo为生产用户

源库操作:

  1.  上传ogg安装包与安装ogg软件。

[oracle@11g ~]$ mkdir ogg

[oracle@11g ~]$ cd ogg
[oracle@11g ogg]$ ls
ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip

[oracle@11g ogg]$ unzip ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip 
Archive: ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip
inflating: fbo_ggs_Linux_x64_ora11g_64bit.tar 
inflating: OGG_WinUnix_Rel_Notes_11.2.1.0.1.pdf 
inflating: Oracle GoldenGate 11.2.1.0.1 README.txt 
inflating: Oracle GoldenGate 11.2.1.0.1 README.doc 
[oracle@11g ogg]$ tar vxf fbo_ggs_Linux_x64_ora11g_64bit.tar 
UserExitExamples/
UserExitExamples/ExitDemo_more_recs/
UserExitExamples/ExitDemo_more_recs/Makefile_more_recs.HPUX
UserExitExamples/ExitDemo_more_recs/Makefile_more_recs.SOLARIS

。。。。省略大量输出。。。。。

ucharset.h
ulg.sql
usrdecs.h
zlib.txt

2.  数据库为ogg传递数据做环境调整。  (归档,数据库级最小附加日志)

[oracle@11g ogg]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sun Nov 9 03:03:20 2014

SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 21
Next log sequence to archive 23
Current log sequence 23
SQL> alter database add supplemental log data;

Database altered.

SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;

System altered.

3. 创建专用的ogg表空间与ogg用户,ogg用户授权 (以后卸载ogg直接删除表空间即可)

SQL> create tablespace goldgate datafile '/home/oracle/app/oradata/orcl/ogg01.dbf' size 2G AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;


Tablespace created.

SQL> CREATE USER goldengate IDENTIFIED BY goldengate DEFAULT TABLESPACE goldgate;

User created.

SQL> GRANT CONNECT TO goldengate;

Grant succeeded.

SQL> GRANT CREATE SESSION TO goldengate;

Grant succeeded.

SQL> GRANT ALTER SESSION TO goldengate;

Grant succeeded.

SQL> GRANT RESOURCE TO goldengate;

Grant succeeded.

SQL> GRANT SELECT ANY DICTIONARY TO goldengate;

Grant succeeded.

SQL> GRANT SELECT ANY TABLE TO goldengate;

Grant succeeded.

SQL> GRANT FLASHBACK ANY TABLE TO goldengate;

Grant succeeded.

SQL> GRANT ALTER ANY TABLE TO goldengate;

Grant succeeded.

 

说明:

在goldengate目录下,执行 ./ggsci 进入命令行界面,左侧提示出现GGSCI (myhost) 1>,
表示进入成功
如果ggsci进入出错,设置一下环境变量:
export LD_LIBRARY_PATH=$ORACLE_HOME/lib

 

[oracle@11g ~]$ cd ogg                  --验证是否可以进入ggsci命令界面
[oracle@11g ogg]$ ./ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Apr 23 2012 08:32:14

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

 

GGSCI (11g) 1>      -- 成功进入界面

——————————————————————————————————————————————————————————————————

目标库操作:

 

说明 : 目标库的操作与源库以上操作全部相同(请参考上面的部分),操作完以上部分后,目标库的附加操作如下>

SQL> GRANT INSERT ANY TABLE TO goldengate;

Grant succeeded.

SQL> GRANT UPDATE ANY TABLE TO goldengate;

Grant succeeded.

SQL> GRANT DELETE ANY TABLE TO goldengate;

Grant succeeded.

 ————————————————————————————————————————————————————————————————————

4.  创建ogg子目录

源库与目标库都执行如下:  

GGSCI (11g) 3> create subdirs

Creating subdirectories under current directory /home/oracle/ogg

Parameter files /home/oracle/ogg/dirprm: already exists
Report files /home/oracle/ogg/dirrpt: created
Checkpoint files /home/oracle/ogg/dirchk: created
Process status files /home/oracle/ogg/dirpcs: created
SQL script files /home/oracle/ogg/dirsql: created
Database definitions files /home/oracle/ogg/dirdef: created
Extract data files /home/oracle/ogg/dirdat: created
Temporary files /home/oracle/ogg/dirtmp: created
Stdout files /home/oracle/ogg/dirout: created

参数说明:

该命令会在OGG安装目录下建立若干子目录,其中几个主要目录如下所示:
dirchk:用于存放各个进程的检查点
dirdat:用于存放数据队列文件
dirprm:用于存放各进程参数文件
dirrpt:用于存放各进程报告
dirpcs:存放各个正在运行的进程信息

 

 5. 创建mgr进程

 

GGSCI (11g) 4> edit param mgr    (--在mgr文件中加入  port 7809)

GGSCI (11g) 8> view param mgr

port 7809

GGSCI (11g) 5> start mgr

Manager started.

GGSCI (11g) 6> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING

————————————————————————————————————————————————————

源库操作:

6. 创建oggdemo测试用户

SQL> create user oggdemo identified by oggdemo;

User created.

SQL> grant dba to oggdemo;

Grant succeeded.

SQL> conn oggdemo;
Enter password: 
Connected.

SQL> create table oggdemo(id int);

Table created.

7.   GGSCI命令行中登录数据库,为所有要复制的数据表添加trandata

 

GGSCI (11g) 9> dblogin userid oggdemo , password oggdemo
Successfully logged into database.

GGSCI (11g) 10> add trandata oggdemo.oggdemo

2014-11-09 04:12:37 WARNING OGG-00869 No unique key is defined for table 'OGGDEMO'. All viable columns will be used to represent the key, but may not guarantee uniqueness. KEYCOLS may be used to define the key.

Logging of supplemental redo data enabled for table OGGDEMO.OGGDEMO.

————————————————————————————————————————————————————————————————

目标端操作:

SQL> create user oggdemo identified by oggdemo;

User created.

SQL> grant dba to oggdemo;

Grant succeeded.

SQL> conn oggdemo;
Enter password: 
Connected.

SQL> create table oggdemo(id int);

Table created.

————————————————————————————————————————————————————————

源库操作:

8.   创建ext进程,tail文件,data_pump进程

GGSCI (11g) 11> add ext exta, tranlog, begin now
EXTRACT added.


GGSCI (11g) 12> add exttrail /home/oracle/ogg/dirdat/la, ext exta, MEGABYTES 20      -- 创建源trail文件
EXTTRAIL added.


GGSCI (11g) 13> add extract dpea, EXTTRAILSOURCE /home/oracle/ogg/dirdat/la        -- 创建data_pump进程
EXTRACT added.


GGSCI (11g) 14> add rmttrail /home/oracle/ogg/dirdat/ra, ext dpea, MEGABYTES 20     --创建目标端trail文件
RMTTRAIL added.


GGSCI (11g) 15> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING 
EXTRACT STOPPED DPEA 00:00:00 00:02:48 
EXTRACT STOPPED EXTA 00:00:00 00:09:36

GGSCI (11g) 17> edit param exta    --exta文件添加内容显示如下

GGSCI (11g) 35> view param exta

EXTRACT exta
setenv (NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
setenv (ORACLE_SID = orcl)
USERID goldengate, PASSWORD goldengate
EXTTRAIL /home/oracle/ogg/dirdat/la
dynamicresolution
table oggdemo.oggdemo;

GGSCI (11g) 33> start exta

Sending START request to MANAGER ...
EXTRACT EXTA starting


GGSCI (11g) 34> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING 
EXTRACT STOPPED DPEA 00:00:00 01:40:39 
EXTRACT RUNNING EXTA 01:47:26 00:00:01

GGSCI (11g) 36> edit param dpea         --dpea文件添加内容显示如下

GGSCI (11g) 39> view param dpea

extract dpea
setenv (NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )
passthru
rmthost 10.100.25.14,mgrport 7809, compress
rmttrail /home/oracle/ogg/dirdat/ra
dynamicresolution
table oggdemo.oggdemo;

 

参数说明:

passthru表示本进程是一个传输进程data pump,无需跟数据库交互,只需要搬运数据即可;
因为data pump要传输数据到目标,所以需要配置rmthost和rmttrail指定目标主机和队列信息

 

GGSCI (11g) 37> start dpea

Sending START request to MANAGER ...
EXTRACT DPEA starting


GGSCI (11g) 38> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING 
EXTRACT RUNNING DPEA 00:00:00 00:00:00 
EXTRACT RUNNING EXTA 00:00:00 00:00:04

————————————————————————————————————————————————————————————

 

目标数据库操作:

9.     创建目标数据库的replicate进程

GGSCI (11g) 6> add rep repa, exttrail /home/oracle/ogg/dirdat/ra, nodbcheckpoint
REPLICAT added.

参数说明: 

repa为进程名,一般为rep开头表示是replicat进程,后面可以加1-2位字符标识,一般与ext进程对应;

exttrail表示要抽取的数据队列,注意是目标端的队列位置;

nodbcheckpoint表示不使用数据库检查点。

 

GGSCI (11g) 17> edit param repa     -- repa文件添加内容显示如下

GGSCI (11g) 20> view param repa

replicat repa
setenv (NLS_LANG = AMERICAN_AMERICA.ZHS16GBK)
setenv (ORACLE_SID = orcl)
userid goldengate, password goldengate
reperror default,abend
discardfile /home/oracle/ogg/dirrpt/repa.dsc,append, megabytes 10
assumetargetdefs
dynamicresolution
map oggdemo.oggdemo, target oggdemo.oggdemo;

 

GGSCI (11g) 18> start repa

Sending START request to MANAGER ...
REPLICAT REPA starting


GGSCI (11g) 19> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING 
REPLICAT RUNNING REPA 00:00:00 00:00:01

 ————————————————————————————————————————————

ok 一切正常结束。


本文转自 张冲andy 博客园博客,原文链接:   http://www.cnblogs.com/andy6/p/6155488.html,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
婚恋系统源码搭建数据库的特点及主要操作语言
婚恋系统源码可以通过数据库管理系统提供的方法,发现和修复数据库故障,防止数据出现问题。当数据库在物理或逻辑上出现问题时,是可以被快速恢复的。
39 0
怎么搭建企业级MySQL数据库服务器?
在CentOS7平台下安装MySQL数据库管理系统工具的方式有很多,我们可以选择简单的二进制数据包安装,也可以选择源码包安装,由于源码安装方式编译的灵活性,这里我们将采用源码安装的方式作为演示案例,源码安装MySQL主要分为安装依赖包、下载MySQL源码包、配置安装环境,编译及安装、初始化数据库五大步骤。
629 0
使用镜像市场的oracle11g镜像搭建云数据库
阿里云的镜像市场提供了丰富的镜像供首次使用ECS或忙于工作没有时间配置环境的人选择。在镜像市场选择Oracle11g,通过本地电脑的SQL连接工具就可以连上数据库并进行调试。
1291 0
CentOS 7.2搭建MariaDB数据库服务器应用与管理
CentOS 7.2搭建MariaDB数据库服务器应用与管理
12 0
快速搭建基于 Serverless 的 .NET Core 数据库应用
快速搭建基于 Serverless 的 .NET Core 数据库应用 简介 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute):函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。
20144 0
生物数据库搭建教程①——在Ubuntu14.04上部署LAMP环境
搭建数据库的第一步就是先把环境搭建好。常用的环境有很多啦,我主要用的就是LAMP环境。 何为LAMP? LAMP = Linux + Apache+ Mysql + PHP 现在也有用nginx来替代apache,称为LNMP的环境。
1693 0
+关注
6902
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载