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为生产用户 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 oggdemo, PASSWORD oggdemo
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 oggdemo, password oggdemo
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 一切正常结束。
linux下单节点oracle数据库间ogg搭建的更多相关文章
- Oracle数据库间的数据复制 - SQLPlus中的COPY命令
Copy命令可以实现不同Oracle数据库间的数据的复制,也是可以实现同一数据库的数据复制,其性能表现和导入/导出相同. 根据9i文档,说Copy命令未来会不支持,但实际上Oracle 11g仍然支持 ...
- linux/windows系统oracle数据库简单冷备同步
linux/windows系统oracle数据库简单冷备同步 我们有一个财务系统比较看重财务数据的安全性,同时我们拥有两套系统,一个生产环境(linux),一个应急备份环境(windows).备份环境 ...
- 连接Linux服务器操作Oracle数据库
连接Linux服务器操作Oracle数据库 由于项目已经上线,现场的数据库服务器不允许直接用Oracle的客户端plsqldev.exe来连接,只能通过Linux服务器的命令来操作. 以下是用Se ...
- plsql 连接 虚拟机Linux下的Oracle数据库 失败
plsql 连接 虚拟机Linux下的Oracle数据库 失败2017年09月09日 09:10:23 守望dfdfdf 阅读数:187 标签: oraclelinux 更多个人分类: 工具 软件编辑 ...
- linux下重启oracle数据库
如何在linux下重启oracle数据库 | 浏览:3930 | 更新:2013-09-18 19:33 1 2 3 4 5 6 分步阅读 在实际工作项目中,有时候会遇到需要对oracle数据库进行重 ...
- windows下plsql连接linux下的oracle数据库
windows下plsql连接linux下的oracle数据库 经过多方查找,终于找到解决办法,特此记录下来,共享之. PL/SQL Develorper:目前未发现可以在Linux系统中安装的版本. ...
- Linux 下安装oracle数据库
原文出处 http://www.linuxidc.com/Linux/2015-02/113222.html 需要安装Oracle DataGuard,所以先要安装单台Oracle11g, ...
- linux中安装oracle数据库
1. 执行 ./runInstaller 提示 /tmp 的空间过小执行 mount -o remount,size=1G,noatime /tmp重新设置 /tmp 的大小 2. 安装完成数据库之后 ...
- linux下安装oracle数据库详细教程
一.安装yum源 下载或拷贝RedHat的iso镜像到本地,比如 /repo/iso/ rhel-server-6.6-x86_64-dvd.iso 1.建立ISO文件存放目录(/repo/iso)和 ...
随机推荐
- String性能优化
String 使用的优化建议 其他 String 使用的优化建议 以上我们描述了在我们的大量文本分析案例中调用 String 的 subString方法导致内存消耗的问题,下面再列举一些其他将导致内存 ...
- iOS弹框
IOS 弹框 如果直接弹出一个自定义的视图 可以选用第三方: MJPopup 弹出: if(!bandview) { bandview=[[[NSBundle mainBundle]loadNibNa ...
- PED结构获取进程路径和命令行地址
1.FS寄存器 2.进入FS寄存器地址,7FFDD000 3.偏移30为PED结构 4.偏移地址10 3C,44偏移:路径地址,命令行地址 // 通过PEB结构去查找所有进程模块 void *PEB ...
- javascript笔记2-引用类型
引用类型是一种数据结构,用于将数据和功能组织在一起.它描述的是一类对象所具有的属性和方法.Object是一个基础类型,Array是数组类型,Date是日期类型,RegExp是正则表达式类型,等. Ob ...
- 获取本机IP非127.0.0.1
protected function GetiP() { $preg="/\A((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5] ...
- Matrix_二维树状数组
Description Given an N*N matrix A, whose elements are either 0 or 1. A[i, j] means the number in the ...
- HDU 4054
http://acm.hdu.edu.cn/showproblem.php?pid=4054 模拟题,对一个字符串的每个字符输出16进制表示的数字,每行处理16个字符,后面再把这16个字符输出,大小写 ...
- HDU 5045
http://acm.hdu.edu.cn/showproblem.php?pid=5045 题意:n个学生m道题,一个n*m的矩阵代表第n个学生解第m题AC的概率,任意两学生做题数差距不能大于1,问 ...
- MINIX3 内核时钟分析
MINIX3 内核时钟分析 4.1 内核时钟概要 先想想为什么 OS 需要时钟?时钟是异步的一个非常重要的标志,设想一下,如 果我们的应用程序需要在多少秒后将触发某个程序或者进程,我们该怎么做到? ...
- Array操作方法和String操作方法比较
Array 的操作方法和 String 的操作方法老是弄混>_<,下面就对于这两个对象的常用操作方法进行比较~~ Array ☞ 操作方法 concat():returns a new a ...