GoldenGate安装配置
GOLDENGATE安装
1. 下载与数据库对应版本的goldengate安装介质。
2. 创建goldengate系统用户,设置用户环境变量,如果是oracle,建议直接使用oracle作为用户安装。
3. 创建goldengate数据库用户,并授予足够权限,该用户至少应该有connect、resource、select any dictionary、select any table的权限。当然授予dba权限的话,那么就涵盖了所需的所有权限。
在此处使用的oracle数据库用户为 ggs 密码也是ggs。 提醒一天,ggs尽量使用自己的表空间。这样可以有效的进行维护。
建议脚本
SQL> grant connect, resource,unlimited tablespace,select any dictionary, select any table,insert any table,update any table,delete any table,alter any table,flashback any table
to ggs;
SQL>grant execute on dbms_flashback to ggs;
SQL>grant execute on utl_file to ggs;
4. 将源端数据库设置为归档模式。
SQL>alter database archivelog;
SQL>archive log list;
注意 归档是需要重启的。所以请妥善管理好时间。
5. 将源端数据库的附加日志打开
SQL>select supplemental_log_data_min from v$database;
如果没有打开,则使用以下sql命令打开附加日志
SQL>alter database add supplemental log data;
6. 打开force logging
SQL>alter database force logging;
7. 将goldengate安装介质上传到服务器,解压缩包。
8. 在解压缩包后的根目录,也就是goldengate工作目录,运行 ./ggsci命令进入ggsci命令提示符界面,运行create subdirs:等待命令结束,goldengate安装完成。
可能遭遇的错误以及该如何处理的过程:
scp ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip oracle@172.25.0.10:/oracle/
mkdir -p /oracle/insogg/
unzip /oracle/ogg112101_fbo_ggs_Linux_x64_ora11g_64bit.zip -d /oracle/insogg/
mkdir -p /oracle/ogg/
tar -xvf /oracle/insogg/fbo_ggs_Linux_x64_ora11g_64bit.tar -C /oracle/ogg
修环境变量
vi .bash_profile
export PATH=$PATH:$ORACLE_HOME/bin:/home/oracle/ggs
export LD_LIBRARY_PATH=/home/oracle/ggs:$ORACLE_HOME/lib
9. 打开DDL支持(可选)
SQL>@marker_setup.sql
SQL>@ddl_setup.sql
SQL>@role_setup.sql
SQL>@Grant the role to all GoldenGate Extract users
SQL>@ddl_enable.sql
SQL>@marker_setup.sql
SQL>@ddl_setup.sql
SQL>@role_setup.sql
SQL> Grant the role to all GoldenGate Extract users
SQL>@ddl_enable.sql
10. 在目标库上面完成7-9步骤
GOLDENGATE配置
1、首先需要在源端和目标端都配置一个管理进程,也就是goldengate实例。
运行ggsci,然后输入 edit params mgr
此时会弹出一个编辑器,在新创建的文件中工加入端口定义,比如port 7809。
保存退出后,运行start mgr则能启动管理进程。
GGSCI>dblogin userid <username>,password <password>
增加需要同步表列表
GGSCI>add trandata <schema_name>.<table_name>
参考实例
./ggsci
GGSCI (install0.example.com) 1> create subdirs
GGSCI (install0.example.com) 1> dblogin userid ggs,password ggs
GGSCI (install0.example.com) 1> edit params mgr
port 7809
dynamicportlist 7800-8000
checkminutes 10
purgeoldextracts /oracle/ggtrail/lt*,usecheckpoints,minkeepdays 3,maxkeepdays 10
PURGEDDLHISTORY MINKEEPDAYS 3, MAXKEEPDAYS 7, FrequencyMinutes 120
PurgeMarkerHistory MinKeepDays 3, MaxKeepDays 7, FrequencyMinutes 120
autostart ER *
autorestart ER *,waitminutes 2,resetminutes 5
laginfominutes 0
lagreportminutes 10
在源添加checkpoint表:
GGSCI (oracle0.example.com) 1>
CHECKPOINT TABLE ggate.checkpoint
--------------------------------
GGSCI (oracle0.example.com) 1> dblogin userid ggs, password ggs
GGSCI (oracle0.example.com) 2> add checkpointtable ggs.checkpoint
#################################################################
在源端增加同步的表
GGSCI (install0.example.com) 1> add trandata vip_system.CIM_MAPEXCHANGECODE
add trandata vip_system.CIM_PERSONMAIN
add trandata vip_system.CIM_SUBSCRIBE
2、在源端配置数据捕获进程和数据传输进程。
数据捕获进程负责将数据从数据库日志抓取出来,存放到一个队列文件中,数据传输进程负责将队列文件按照指定的业务逻辑传输到目标数据库。
添加extract进程命令: add extract <extract_name>,tranlog,<开始时间或者SCN或者RBA>
修改配置参数: edit params <extract_name>
GGSCI>delete extract demo
Deleted EXTRACT DEMO.
配置抽取进程
GGSCI> add extract demo,tranlog,begin now
EXTRACT added.
GGSCI>add extract demo,tranlog,EXTSEQNO 849039
GGSCI>edit params demo
extract demo
setenv (NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)
setenv (ORACLE_SID="orcl") userid ggs,password oracle
REPORT AT 01:59
reportrollover at 02:00
GETTRUNCATES
WARNLONGTRANS 2h,CHECKINTERVAL 3m
TRANLOGOPTIONS convertucs2clobs
FETCHOPTIONS NOUSESNAPSHOT
exttrail /home/oracle/ggs/dirdat/mm
discardfile /home/oracle/ggs/dirrpt/mm, append , megabytes 100
dynamicresolution
table sh.one;
指定从某一时刻开始
GGSCI>add extract demo,tranlog,begin 2012-1-2 11:23:10
配置参数说明
Extract <extract_name>:指定刚才加入的extract的名字
SETENV():指定该extract启动时oracle相关的环境变量.
Userid <oracle_user>, password <oracle_password>:连接到源数据库的用户,既我们在第一步建立的源端数据库用户。
Report:指定每天在日志中产生报告的时间
Reportrollover:指定每天汇报队列文件切换报告的时间
Gettruncates:告诉extract对truncate操作也要捕获
Warnlongtrans:超过<n>个小时的交易为长交易,要在goldengate日志中进行记录,检查时间为指定的checkinterval。
Tranlogoptions:针对源数据库的一些配置选项,如数据库归档的位置等等,本例子中的值是指当源和目标数据库字符集不一致,而且传输包含clob字段时,需要对clob中的字符集进行转换。
Fetchoptions:指定当从源数据库抓取数据时的一些选项,本例指不从undo tablespace取数据,而是从表里直接抽取。
Exttrail:本地队列文件,extract将数据从数据库日志抓取后存放在该队列文件。
Discardfile:指定丢弃数据的存放位置。
Dynamicresolution:指定当extract从日志抓取变化数据时,根据当前的需要,动态解析表名,从而加快抓取进程的启动速度。
Table <schema>.<table_name>:指定要从源系统抓取那些表的数据,这里schema不能用通配符,table_name可以用通配符。
配置传输进程
GGSCI>add extract pump1,exttrailsource ./dirdat/lt
EXTRACT added
GGSCI>add rmttrail ./dirdat/lt,extract pump1
指定传输起始点
GGSCI> alter extract pump1 extseqno <seq>, extrba <ba>
GGSCI>alter extract pump1 begin 2012-1-2 11:23:10
参考样例
抽取配置
GGSCI (centerdb-prod) 2> edit params ext1
extract ext1
setenv (NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK)
setenv (ORACLE_SID="orcl")
userid ggs,password ggs
REPORT AT 01:59
reportrollover at 02:00
WARNLONGTRANS 2h,CHECKINTERVAL 3m
TRANLOGOPTIONS convertucs2clobs
FETCHOPTIONS NOUSESNAPSHOT
DBOPTIONS ALLOWNOLOGGING
ignorereplicates
tranlogoptions excludeuser ggate
exttrail /oracle/ogg/dirdat/ea
discardfile /oracle/ogg/dirrpt/dt,append,megabytes 100
dynamicresolution
TABLE vip_system.CIM_MAPEXCHANGECODE;
TABLE vip_system.CIM_PERSONMAIN;
TABLE vip_system.CIM_SUBSCRIBE;
TABLE vip_system.CUSTOMER_BASICINFO;
TABLE vip_system.CUSTOMER_SERVICE;
TABLE vip_system.CUS_GROUP;
GGSCI (oracle0.example.com) 2> add extract ext1, tranlog, begin now
添加抽取进程的生成文件
GGSCI (oracle0.example.com) 3> add exttrail /oracle/ogg/dirdat/ea,extract ext1
增加投递功能
GGSCI (centerdb-prod) 2>edit params pump1
extract pump1
userid ggs,password ggs
rmthost 172.19.16.45,mgrport 7809
rmttrail /home/oracle/ogg/dirdat/lt
passthru
table vip_system.*;
table gbox.*;
table weixin.*;
table tzzh.*;
----------------------------------------------
在源端增加投递进程
GGSCI (oracle0.example.com) 4> add extract pump1,exttrailsource /oracle/ogg/dirdat/ea , begin now
增加投递到远程的文件
GGSCI (oracle0.example.com) 5> add rmttrail /home/oracle/ogg/dirdat/lt ,extract pump1
3、配置目标端的应用进程
设置检查点
GGSCI>edit params GLOBAL
CHECKPOINT TABLE ggate.checkpoint
GGSCI>dblogin userid <userid>,password <password>
GGSCI>add checkpointtable
增加复制进程组
GGSCI>add replicat rep1,exttral ./dirdat/lt
GGSCI>edit param rep1
replicat rep1
userid ggate, password ggate50
assumetargetdefs
reperror default, discard
dynamicresolution
discardfile /oracle/goldengate/dirdat/rep1_discard.txt, append, megabytes 10
DDL
map center_admin.*, target center_admin.*;
指定应用进程起始点
GGSCI> alter extract rep1 extseqno <seq>, extrba <ba>
GGSCI>alter extract rep1 begin 2012-1-2 11:23:10
参考样例
GGSCI (localhost.localdomain) 58> edit params mgr
port 7809
dynamicportlist 7800-8000
autorestart er *
autorestart extract *,waitminutes 2,retries 5
purgeoldextracts /home/oracle/ogg/dirdat/lt*,usecheckpoints,minkeepdays 1,maxkeepdays 2
在源和目标都要端添加checkpoint表:
配置全局参数文件
vi /home/oracle/ogg/GLOBALS
--------------------------------
checkpointtable ggs.checkpoint
--------------------------------
GGSCI (oracle0.example.com) 1> dblogin userid ggs, password ggs
GGSCI (oracle0.example.com) 2> add checkpointtable ggs.checkpoint
#################################################################
GGSCI (localhost.localdomain) 59> edit params rep1
replicat rep1
SETENV(NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK")
userid ggs, password ggs
assumetargetdefs
reperror default, discard
discardfile /home/oracle/ogg/dirdat/rep1_discard.txt, purge, megabytes 1000
dynamicresolution
DDL INCLUDE MAPPED &
EXCLUDE MAPPED OBJTYPE 'TRIGGER' &
EXCLUDE MAPPED OBJTYPE 'JOB' &
EXCLUDE MAPPED OPTYPE TRUNCATE
DDLERROR DEFAULT IGNORE RETRYOP
map vip_system.*, target vip_system.*;
map gbox.*, target gbox.*;
map weixin.*, target weixin.*;
map tzzh.*, target tzzh.*;
增加复制进程
GGSCI (install0.example.com) 2> add replicat rep1,exttrail /home/oracle/ogg/dirdat/lt , nodbcheckpoint
GoldenGate安装配置的更多相关文章
- [转]Oracle GoldenGate安装配置
ref:http://blog.sina.com.cn/s/blog_5d29418d0101cvyx.html 1 简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软 ...
- Goldengate双向复制配置
一.Goldengate双向复制配置 1.1.在进行如下配置之前,先在源数据库source system(原来的目标数据库)端 添加辅助的redolog配置: SQL>alter databas ...
- Oracle GoldenGate常用配置端口
1 简介 Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数 ...
- ogg的安装配置 配置双向同步(含DDL)
第一部分 先配置单向同步(含DDL) 一 源端安装GoldenGate 创建用户 创建目录 mkdir -p /opt/ogg chmod -R 777 /opt/ogg chown -R oracl ...
- GoldenGate DB11gr2配置手册
GoldenGate DB11gr2配置手册 源端数据库配置 1.1源端数据库打开Archive Log: SQL>shutdown immediate; SQL>startup moun ...
- Hive安装配置指北(含Hive Metastore详解)
个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...
- Hive on Spark安装配置详解(都是坑啊)
个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...
- ADFS3.0与SharePoint2013安装配置(原创)
现在越来越多的企业使用ADFS作为单点登录,我希望今天的内容能帮助大家了解如何配置ADFS和SharePoint 2013.安装配置SharePoint2013这块就不做具体描述了,今天主要讲一下怎么 ...
- Hadoop的学习--安装配置与使用
安装配置 系统:Ubuntu14.04 java:1.7.0_75 相关资料 官网 下载地址 官网文档 安装 我们需要关闭掉防火墙,命令如下: sudo ufw disable 下载2.6.5的版本, ...
随机推荐
- 用word发CSDN blog
目前大部分的博客作者在用Word写博客这件事情上都会遇到以下3个痛点: 1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.使用Word写 ...
- JavaScript语言精粹 笔记04 数组
数组1 数组字面量2 长度3 删除4 列举5 混淆的地方6 方法7 维度 数组1 数组字面量 var empty = []; var numbers = [ 'zero', 'one', 'two', ...
- Linux或者window装svn
Centos7搭建SVN Server手记 安装svn和依赖模块 yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql ...
- ASP.NET Identity + Entity Framework 6 注意
最近一个项目使用ASP.NET Identity + Entity Framework 6开发,本来一切正常. 某时注意到,更改密码功能程序执行起来没有问题,界面上也报修改密码成功,但实际上密码并没有 ...
- MlskincolorButton使用方法
颜色设置 图标添加Png格式
- How to design a product table for many kinds of product where each product has many parameters
https://stackoverflow.com/questions/695752/how-to-design-a-product-table-for-many-kinds-of-product-w ...
- 使用ContentPresenter,不使用ContentControl
参考: https://wpf.2000things.com/2017/04/06/1204-using-a-datatrigger-to-change-content-in-a-contentpre ...
- what eats up the performance in the interior scene?
- baseline (7w rps/core) - switch from large accelerator to regular accelerator (9w rps/core) - repl ...
- 《Think in Java》17~18
chapter 17 容器深入研究 填充容器 package cn.test; import java.util.ArrayList; import java.util.Collections; im ...
- Mac与iPhone的使用
1.mac操作 苹果Mac操作系统下怎么显示隐藏文件(shift+cmmand+. ) Mac屏幕录制Gif Mac 键盘快捷键 Mac 上安装python3 2.iPhone操作 iPhone如何设 ...