1. 程式人生 > >ogg 12.3 for sqlserver 2016 CDC模式配置

ogg 12.3 for sqlserver 2016 CDC模式配置

width 還需 -c lean cdb cal parse 安裝配置 begin

本文主要講述ogg 12.3 通過CDC抽取sqlserver 2016 enterprise的過程,投遞配置相對簡單,所以不在此闡述。

配置步驟概述

1. 解壓ogg 12.3 for sqlserver軟件,執行create subdirs,編輯mgr並啟動。

2. 數據庫安裝配置,並打補丁

3. create schema ogg

4. 創建測試表

5. 創建globals文件

6. 創建同步用戶

7. 確保sqlagent能正常啟動

8. 在源端DB上啟用CDC

9. add trandata

10. 創建清理歷史變更數據的job

11. 創建ODBC

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 [source]

GO

CREATE SCHEMA [ogg] AUTHORIZATION [dbo]

GO

創建測試表

use source;

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

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

use target;

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同步用戶

並賦權

技術分享

技術分享

目標端用戶

技術分享

啟動sqlagent

agent用於啟動CDC對應的job, 所以必須要啟動agent才能正常同步。

技術分享

源庫上啟用cdc

use source

EXECUTE sys.sp_cdc_enable_db

OGG trandata

GGSCI>dblogin sourcedb srcdb, userid srcogg, password srcogg

GGSCI>add trandata dbo.test1

GGSCI>add trandata dbo.test2

執行完成之後,可以看到多了一張配置表

技術分享

ogg.OracleGGTranTables will be added automatically.

如果數據表沒有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 source (local) ogg

add two tables:

技術分享

and add a new job

技術分享

創建ODBC

如果需要遠程捕獲sqlserver,則只要配置通過odbc遠程訪問DB即可實現。

技術分享

技術分享

配置抽取進程

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

test

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

查看OGG的抽取進程狀態

技術分享

有捕獲到數據。

技術分享

ogg 12.3 for sqlserver 2016 CDC模式配置