本文主要讲述ogg 12.3 通过CDC抽取mssqlserver 2016 enterprise的过程,以sqlserver为目标端投递配置相对简单,所以在此不在赘述。

针对以前的mssqlserver,是直接解析日志的模式,所以配置略有不同。

配置步骤概述

1.         解压ogg 12.3 for sqlserver软件,执行create subdirs,编辑mgr并启动。

2.         数据库安装配置,并打补丁

3.         create schema ogg

4.         创建测试表

5.         创建globals文件

6.         创建同步用户

7.         确保sqlagent能正常启动

8.         在源端DB上启用CDC

9.         创建ODBC

10.      add trandata

11.     创建清理历史变更数据的job

12.     建立抽取进程

13.     测试

安装过程

OGG软件及sqlserver 2016安装步骤在此省略。

补丁下载安装

安装完成sqlserver 2016
ent版本之后,还需要打补丁:

https://support.microsoft.com/en-us/help/3166120/fix-could-not-find-stored-procedure-sys-sp-cdc-parse-captured-column-l

源库上创建OGG
schema

用于存放配置表,其中cdc schema由启用CDC步骤的存储过程创建。

语法:

USE [sourcedb]

GO

CREATE SCHEMA [ogg] AUTHORIZATION
[dbo]

GO

创建测试表

use sourcedb;

create table dbo.test1 (id int
primary key, name varchar(50));

create table dbo.test2( id int,
name varchar(50), age int);

use targetdb;

create table dbo.test1 (id int
primary key, name varchar(50));

create table dbo.test2( id int,
name varchar(50), age int);

创建Globals文件

在OGG目录下,新建globals文件,内容如下

ggschema ogg

创建OGG同步用户

创建访问DB的用户并赋权srcogg, tgtogg

目标端用户

启动sqlagent

agent用于启动CDC对应的job, 所以必须要启动agent才能正常同步。

源库上启用cdc

use sourcedb

EXECUTE
sys.sp_cdc_enable_db

创建ODBC

如果需要远程捕获sqlserver,则只要配置通过odbc能远程访问DB即可实现。

OGG
trandata

GGSCI>dblogin sourcedb srcdb,
userid srcogg, password srcogg

GGSCI>add trandata
dbo.test1

GGSCI>add trandata
dbo.test2

执行完成之后,可以看到多了一张配置表

ogg.OracleGGTranTables由OGG 第一次add trandata自动创建。

创建OGG
clean job

需要先删除DB自带的clean job

EXECUTE sys.sp_cdc_drop_job
'cleanup'

然后在OGG安装目录下,进入命令行,执行如下语句,其中(local)是默认的sqlserver实例

ogg_cdc_cleanup_setup.bat
createjob srcogg srcogg sourcedb (local) ogg

其中: srcogg为用户名及密码,source为源DB的名称,(local)为sqlserver实例, ogg为对应的schema。

此时,会再增加两张配置表:

and add a new job

配置抽取进程

GGSCI (DESKTOP-V8IQDQP) 6> view
param exsrc

extract exsrc

sourcedb srcdb, userid srcogg,
password srcogg

exttrail ./dirdat/aa

table dbo.*;

add extract exsrc, tranlog, begin
now

add exttrail ./dirdat/aa, extract
exsrc

测试

insert into dbo.test1 values(1,
'bc是中kos');

可以看到正常捕获数据。

ogg 12.3 for sqlserver 2016/2014 CDC模式配置的更多相关文章

  1. ogg 12.3 for sqlserver 2016 CDC模式配置

    本文主要讲述ogg 12.3 通过CDC抽取sqlserver 2016 enterprise的过程,投递配置相对简单,所以不在此阐述. 配置步骤概述 1. 解压ogg 12.3 for sqlser ...

  2. 基于windows server 2016和sqlserver 2016 AlwaysOn的群集配置

    文档:基于windows server 2016和sqlserver 2...链接:http://note.youdao.com/noteshare?id=4f07c1c3f7d0e32b7631d7 ...

  3. 使用SQLServer 2008的CDC功能实现数据变更捕获

    原文:使用SQLServer 2008的CDC功能实现数据变更捕获 最近由于工作需要,研究了一下2008 CDC功能,觉得还不错,下面整理了一下研究过程,虽然比较粗略,但是基本上能用了,如果有补充请大 ...

  4. 基于无域故障转移群集 配置高可用SQLServer 2016数据库

    基于上次的文章搭建的环境,可以在这里:http://www.cnblogs.com/DragonStart/p/8275182.html看到上次的文章. 演示环境 1. 配置一览 Key Value ...

  5. Sqlserver 2016 R Service环境安装的各种错误(坑)解决办法

    相信很多朋友都会慕名Sqlserver 2016的R语言功能,将自己的数据库升级到Sqlserver 2016,但是当你安装完Sqlserver 2016的R语言组件之后,你会发现并不能直接使用,比如 ...

  6. 体验SqlServer Express 2014

    想使用SQLServer Express记录一些数据,但使用起来并不令人愉快.SQLServer Express是一个免费的可用数据库,但似乎设置了一些门槛,多少显得并不真心实意.抛开版本(技术)限制 ...

  7. 12. 星际争霸之php设计模式--模板模式

    题记==============================================================================本php设计模式专辑来源于博客(jymo ...

  8. SQLServer 2008 R2 发布订阅配置指南

    原以为配置SQLServer 2008 R2的发布订阅很简单,实际配置后才发现过程中有问题地方一直都没搞明白,最后经过几天的查找问题和实践,终于搞定了.现将过程记录如下. SQLServer 2008 ...

  9. [资料分享]SQL Server 2016/2014/2012/2008简体中文企业版下载+对应补丁

    为什么只提供企业版下载呢?因为不管你是学生还是工作研究人员,企业版都是功能最为齐全的一个版本,比如企业版都集成了SQL Server Management Studio管理界面(俗称企业管理器的可视化 ...

随机推荐

  1. vue使用技巧(分页、nextTick、复制对象)

    分页技巧 v1.0+ 版本的时候使用过滤器 limitBy 实现 v2.0+ 版本的时候使用compute使用 slice 方法实现 data:{ pageNum:10 }, computed:{ n ...

  2. SQL - 2.基础语法

    一.SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GR ...

  3. about this blog

    这个博客大概是被我用来整理模板的吧╮(╯▽╰)╭ 因为本小盆友巨懒,99.9%是不会写什么题解或者学习笔记什么的

  4. 在队列中join()与task_done()的关联性

    1.基础解释: Queue.task_done() 在完成一项工作之后,Queue.task_done()函数向任务已经完成的队列发送一个信号 Queue.join() 实际上意味着等到队列为空,再执 ...

  5. Python的基本语法2

    一.运算符 # 算术运算符, +, -, *, /, //, %, **, 注意//为整除 # 赋值运算符, =, +=, -=, *=, /=, //= ,%=, **= # 比较运算符, ==, ...

  6. linux基础命令--groupdel 删除群组

    描述 groupdel命令用于删除用户组. groupdel命令会去修改系统下的/etc/group和/group/gshadow文件,删除有关用户组的所有项目(一般来说使用groupadd或user ...

  7. [转]理解 Bias 与 Variance 之间的权衡----------bias variance tradeoff

    有监督学习中,预测误差的来源主要有两部分,分别为 bias 与 variance,模型的性能取决于 bias 与 variance 的 tradeoff ,理解 bias 与 variance 有助于 ...

  8. CatLog_小鱼要加油

    python datetime 计算时间差 面向对象:类中的特殊成员 python中字符串的拼接 Django Django中一个项目使用多个数据库 Django中cookie和session使用 在 ...

  9. HTTP中Post与Put的区别

    PUT请求是向服务器端发送数据的,从而改变信息,该请求就像数据库的update操作一样,用来修改数据的内容,但是不会增加数据的种类等,也就是说无论进行多少次PUT操作,其结果并没有不同. POST请求 ...

  10. 初识python爬虫框架Scrapy

    Scrapy,按照其官网(https://scrapy.org/)上的解释:一个开源和协作式的框架,用快速.简单.可扩展的方式从网站提取所需的数据. 我们一开始上手爬虫的时候,接触的是urllib.r ...