goldengate原理与简单配置
goldengate的原理:http://www.ipresst.com/works/52bc44c42954a7d73b0003f2
简单单向配置:
- 在oracle官网下载下载 GoldenGate
http://www.oracle.com/technetwork/cn/middleware/goldengate/downloads/index.html
2.解压文件到一个目录下,在文件目录下打开ggsci.exe,界面如下,输入help,可看到各种命令提示
3.
创建需要的目录:我这里已经创建过了
创建后再目录下多出一下目录
4. GoldenGate通过抓取源端数据库重做日志进行分析,将获取的数据应用到目标端,实现数据同步。因此,源数据库需要必须处于归档模式,并启用附加日志和强制日志。
SQL> select log_mode,supplemental_log_data_min,force_logging from v$database;
LOG_MODE SUPPLEME FOR
------------ -------- ---
ARCHIVELOG YES YES
如果为NO,需要添加,命令如下
1)archivelog
SQL>shutdown immediate
SQL>startup mount
SQL>alter database archivelog;
SQL>alter database open;
(2) force logging
SQL>alterdatabase force logging;
(3)supplemental log data
SQL>alterdatabase add supplemental log data
如果启用DDL 支持,必须关闭recycle bin。官网的解释如下:
If the recyclebin is enabled, the Oracle GoldenGate DDL
trigger session receives implicitrecycle bin DDL operations that cause the
trigger to fail.
Oracle 11g:
SQL> alter system set recyclebin=offscope=spfile;
System altered.
如果数据库是10g,需要关闭recyclebin并重启;或者手工purge
recyclebin。
5.创建存放DDL信息的user并赋权
SQL>create user ggate identified by ggate default tablespace users
SQL>grant connect,tesource to ggate;
SQL>grant execute on utl_file to ggate;
在Source DB上创建测试用户
SQL>create user ggs identified by ggs
default tablespace users
SQL>grant dba to ggs;
在target DB上创建测试用户
SQL>create user ggt identified by ggt
default tablespace users
SQL>grant dba to ggt;
6. 退出所有使用Oracle 的session,然后使用SYSDBA权限的用户执行如下脚本:
D:\>cd
D:\studysoftware\goldengate
D:\studysoftware\goldengate>sqlplus
/ as sysdba
SQL>@marker_setup.sql; --提示过程中输入用户:ggate
SQL>@ddl_setup.sql; --提示过程中输入用户:ggate;INITIALSETUP
SQL>@role_setup.sql; --提示过程中输入用户:ggate
SQL>grant GGS_GGSUSER_ROLE to ggate;
SQL>@ddl_enable.sql;
7. 在Source 和Target 上配置Manager
GGSCI (gg1) 1> info all
Program Status Group Lag Time
Since Chkpt
MANAGER STOPPED
GGSCI (gg1) 2> edit params mgr
输入如下内容:
PORT 7809
GGSCI (gg1) 3> start manager
Manager started.
8
配置SourceDb的复制队列
连接到数据库,测连接
GGSCI (WIN-E1A8FKUJLVS) 4> dblogin userid
ggate,password ggate
Successfully logged into database.
增加一个抽取
GGSCI (WIN-E1A8FKUJLVS) 5> add extract
ext1,tranlog,begin now
GGSCI (WIN-E1A8FKUJLVS) 6> add exttrail
D:\studysoftware\goldengate\dirdat\lt,ex
tract ext1 ---该路径是goldengate的路径
编辑抽取进程ext1参数
GGSCI (WIN-E1A8FKUJLVS) 8> edit params
ext1
extract ext1
userid ggate,password ggate
rmthost 127.0.0.1,mgrport 7809
rmttrail D:\studysoftware\goldengate\dirdat\lt
dynamicresolution
table ggs.*; --ggs为源数据库,即要备份的数据库,*表示所有表
GGSCI (WIN-E1A8FKUJLVS) 9> start ext1
Sending START request to MANAGER ...
EXTRACT EXT1 starting
9.配置TargetDB同步队列
(1)在Target端添加checkpoint表
GGSCI (WIN-E1A8FKUJLVS) 1> edit params
./GLOBAL
GGSCHEMA ggate
CHECKPOINTTABLE ggate.checkpoint
添加以上2条数据
GGSCI (WIN-E1A8FKUJLVS) 2> dblogin
userid ggate,password ggate
Successfully logged into database.
--说明,这个用户是在Source库启用DDL创建的,我在Target库也创建了这个用户
GGSCI (WIN-E1A8FKUJLVS) 3> add
checkpointtable ggate.checkpoint
Successfully created checkpoint table ggate.checkpoint.
创建同步队列
GGSCI (WIN-E1A8FKUJLVS) 4> add replicat rep1,exttrail
D:\studysoftware\goldenga
e\dirdat\lt,checkpointtable ggate.checkpoint
REPLICAT added.
GGSCI (WIN-E1A8FKUJLVS) 5> edit params rep1
replicat rep1
userid ggate,password ggate
assumetargetdefs
discardfile E:\ggate\dirdat\rep1_discard.txt,append
MAP ggs.*, TARGET ggt.*;---目标表和源表的映射
开启同步队列
GGSCI (WIN-E1A8FKUJLVS) 6> start ext1
EXTRACT EXT1 is already running.
GGSCI (WIN-E1A8FKUJLVS) 7> start rep1
Sending START request to MANAGER ...
REPLICAT REP1 starting
测试Data 复制
1.在Source DB端和Target DB上都建立测试表
SQL> conn ggs/ggs
Connected.
SQL> @D:\studysoftware\goldengate\demo_ora_create.sql;
SQL> conn ggt/ggt
Connected.
SQL> @D:\studysoftware\goldengate\demo_ora_create.sql;
在sourceDB端插入数据
SQL> @D:\studysoftware\goldengate\demo_ora_insert.sql
在target端就能看到数据了
goldengate原理与简单配置的更多相关文章
- LVS负载均衡机制之LVS-DR模式工作原理以及简单配置
本博文主要简单介绍一下LVS负载均衡集群的一个基本负载均衡机制:LVS-DR:如有汇总不当之处,请各位在评论中多多指出. LVS-DR原理: LVS的英文全称是Linux Virtual Server ...
- Filebeat原理与简单配置入门
Filebeat工作原理 Filebeat由两个主要组件组成:prospectors 和 harvesters.这两个组件协同工作将文件变动发送到指定的输出中. Harvester(收割机):负责读取 ...
- 使用LVS实现负载均衡原理及安装配置详解
负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F5.Netscale.这里主要是学 ...
- Azure WAF防火墙工作原理分析和配置向导
Azure WAF工作原理分析和配置向导 本文博客地址为:http://www.cnblogs.com/taosha/p/6716434.html ,转载请保留出处,多谢! 本地数据中心往云端迁移的的 ...
- 使用 LVS 实现负载均衡原理及安装配置详解
负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F5.Netscale.这里主要是学 ...
- Optaplanner规划引擎的工作原理及简单示例(2)
开篇 在前面一篇关于规划引擎Optapalnner的文章里(Optaplanner规划引擎的工作原理及简单示例(1)),老农介绍了应用Optaplanner过程中需要掌握的一些基本概念,这些概念有且于 ...
- RabbitMQ系列(二)深入了解RabbitMQ工作原理及简单使用
深入了解RabbitMQ工作原理及简单使用 RabbitMQ系列文章 RabbitMQ在Ubuntu上的环境搭建 深入了解RabbitMQ工作原理及简单使用 RabbitMQ交换器Exchange介绍 ...
- 深入解读RabbitMQ工作原理及简单使用
RabbitMQ系列目录 RabbitMQ在Ubuntu上的环境搭建 深入解读RabbitMQ工作原理及简单使用 Rabbit的几种工作模式介绍与实践 Rabbit事务与消息确认 Rabbit集群搭建 ...
- Mybatis缓存(1)--------系统缓存及简单配置介绍
前言 Mybatis的缓存主要有两种: 系统缓存,也就是我们一级缓存与二级缓存: 自定义的缓存,比如Redis.Enhance等,需要额外的单独配置与实现,具体日后主要学习介绍. 在这里主要记录系统缓 ...
随机推荐
- 【docker】查看docker容器或镜像的详细信息命令,查看docker中正在运行的容器的挂载位置
命令: docker inspect f257d69e0035 格式: docker inspect 容积或镜像ID 首先,docker ps获取简要信息 然后输入命令docker inspect ...
- 所见即所得的网页设计工具 Macaw
所见即所得的网页设计工具 Macaw: 2014年最具前景的12款创新产品 1\ http://macaw.co/ 2\ http://www.kickstarter.com/projects ...
- HashMap深度解析(二)
本文来自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/16890151,转载请注明. 上一篇比较深入的分析了HashM ...
- FL2440 ubifs文件系统烧录遇到的问题——内核分区的重要性
之前用的文件系统是initramfs的,这种文件系统是编译进内核里的,而开机之后内核是写在内存中的,所以每次掉电之后写进文件系统中的东西都会丢失.所以决定换成ubifs的文件系统.这种文件系统是跟内核 ...
- 数据写入到TXT文档中
public class FileWrite { public File file; public FileOutputStream stream = null; //每次写入都会覆盖之前的内容 pu ...
- 2017.11.30 tomcat远程调试
参考来自:http://blog.csdn.net/afgasdg/article/details/9236877 1.jpda 有两种方式,一种是修改tomcat的catalina.bat来配置jp ...
- Tornado框架的初步使用
Tornado的搭建很简单,使用pip,或者下载源码均可. 我们先看一个最简单的程序: import tornado.ioloop import tornado.web class MainHan ...
- Androidproject师进阶之路 :《Android开发进阶:从小工到专家》上市啦!
封面 文件夹1 文件夹2 - 当当购买链接 - 京东购买链接 为什么写这本书 写这本书的念头由来已久了. 或许是从我打算写<Android源代码设计模式解析与实战>那时起就萌生了这个念头, ...
- python——异常except语句用法与引发异常
except: #捕获所有异常 except: <异常名>: #捕获指定异常 except:<异常名1,异常名2):捕获异常1或者异常2 except:<异常名>,< ...
- 图解avaScript中this指向(超透彻)
一个图讲清楚JavaScript中this指向: 说明: (1)严格模式下,禁止this关键字指向全局对象会报错. (2)闭包中的this对象具有全局性,因此通常指向window. (3)优先级:n ...