zoukankan      html  css  js  c++  java
  • ogg 12.3 for sqlserver 2016/2014 CDC模式配置

    本文主要讲述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步骤的存储过程创建。

    clip_image001

    语法:

    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

    clip_image002

     

    clip_image004

    目标端用户

    clip_image006

     

    启动sqlagent

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

    clip_image007

     

     

    源库上启用cdc

    use sourcedb

    EXECUTE sys.sp_cdc_enable_db


    创建ODBC

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

    clip_image011

     

    clip_image013

     

     

    OGG trandata

    GGSCI>dblogin sourcedb srcdb, userid srcogg, password srcogg

    GGSCI>add trandata dbo.test1

    GGSCI>add trandata dbo.test2

     

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

    clip_image008

    ogg.OracleGGTranTablesOGG 第一次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

     

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

    clip_image009

    and add a new job

    clip_image010

     

    配置抽取进程

    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');

     

    clip_image015

     

    clip_image016

     

    可以看到正常捕获数据。

     

  • 相关阅读:
    thinkphp3.2.3版本在windows本地apache环境运行正常,上传到centos服务器apache环境中出现:thinkphp 上传根目录不存在!请尝试手动创建:uploads/
    [POI2013]LUK-Triumphal arch
    【背包问题】
    2016 acm香港网络赛 A题. A+B Problem (FFT)
    tomcat部署项目的三种方式
    仿照ArrayList自己生成的MyList对象
    使用回调函数实现回文判断
    关于angularjs的model的一些问题
    关于使用Tomcat服务器出现413错误的解决办法(Request Entity Too Large)
    关于angularjs+typeahead的整合
  • 原文地址:https://www.cnblogs.com/margiex/p/10472690.html
Copyright © 2011-2022 走看看