• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

H3C SecPath G9000-X-G系列多级安全互联交换平台 典型配置(E6702)-5W100

19-数据库同步配置举例-自定义条件

本章节下载 19-数据库同步配置举例-自定义条件  (837.08 KB)

19-数据库同步配置举例-自定义条件


1  数据库同步介绍

数据库同步模块为系统内及系统间的信息交互和共享提供了一个集成化数据交互和共享空间,可同时满足客户各类平台、数据库及应用之间的数据交换需求。

2  配置前提

本文档不严格与具体软、硬件版本对应,如果使用过程中与产品实际情况有差异,请以设备实际情况为准。

本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。

本文档假设您已了解H3C SecPath G9000-X-G系列多级安全互联交换平台(以下简称为平台)特性和数据库同步模块功能。

3  配置指导

3.1  测试准备

PC、多级安全互联交换平台、SW(交换机)、DB2。

3.2  组网需求

图1所示,HOST1和HOST2上面分别装有DB2数据库。现有以下组网需求:

将用户对前置侧数据库表的操作同步到后置侧数据库,实现内、外网之间,自动安全信息交换。

注:此文档以DB2为例进行配置指导,新建用户及数据库表进行同步,在实际部署中可使用已有用户及数据库表进行操作。

图1 数据库同步配置组网图

 

表1 业务梳理:

内网

DB2数据库地址

前置机地址

(连接内网侧的接口地址)

后置机地址

(连接外网侧的接口地址)

外网

DB2数据库地址

192.168.90.41

192.168.90.166

192.168.91.18

192.168.91.20

 

3.3  使用版本

3.3.1  平台版本

该配置指导是平台设备ESS 6702P01版本,且需要License开启数据库同步功能。

3.3.2  支持的数据库版本

mysql5.0.2/mysql5.5.60/mysql8.0.26/mysql8.0.39

Oracle10g/11g/12c(CDB)/19c

Sqlserver 2022/ Sqlserver2008R2

DB2 v10.5.0.5/DB2 v11.1.2020.1393;

Kingbase v8r6;

Gbase 8.3.85.12;

PostgreSQL 10.13/PostgreSQL 10.23/PostgreSQL 16

DM8

神通数据库7.0.8

Highgo数据库V4.5.8

sybase数据库15.7

 

3.4  配置步骤

本次同步方向以“前到后”、增量同步举例。

3.4.1  连通性配置

1. 组网环境配置

配置HOST1、HOST2、管理PC、SW互联口.

2. 平台上的网络配置

admin用户通过管理PC登录平台的系统管理端,分别配置前、后置GE0/0的IP地址。

图2 配置前置GE0/0地址

图3 配置后置GE0/0地址

 

 

3.4.2  配置DB2 数据库

以配置DB2为例,在前、后置数据库服务器进行相同配置。

1. 安装DB2

在HOST1和HOST2上安装DB2,linux或windows版本均可。

2. 同步用户配置

在前后置使用sysdba用户登录DB2数据库,新建同步用户,例如db2inst1,并且赋予以下权限:

CREATE USER db2inst1 IDENTIFIED BY db2inst1;

GRANT CONNECT,RESOURCE,DBA TO db2inst1;

SET AUTOCOMMIT ON;

图4 新建同步用户

 

3. 同步数据库表配置

在前后置使用新建的db2inst1用户登录,创建数据库表。步骤如下:

CREATE TABLE "DB2INST1"."DBTAB'

"NAME" VARCHAR(50 OCTETS)NOT NULL,

"AGE" INTEGER"

IN "USERSPACE1"

ORGANIZE BY ROW

ALTER TABLE "DB2INST1"."DBTAB"

ADD CONSTRAINT "DBTAB PK" PRIMARY KEY

("NAME");

GRANT CONTROL ON TABLE "DB2INST1"."DBTAB" TO USER "DB2INST1";

图5 创建同步表

 

3.4.3  数据库同步配置

1. 同步数据库配置

(1)     添加前置同步数据库

登录secrecy用户,依次点击:数据库同步>同步数据库配置>添加,添加数据库配置如下。

图6 添加前置同步数据库

 

表2 数据库同步参数说明

参数

说明

节点ID

用于前、后置机系统判断是否为同一条任务的认证ID

描述

填写该配置描述信息

数据库类型

选择配置数据库类型

可选择:Mysql类型,Oracle类型,Db2类型,Sqlserver类型、KingBase类型、DM类型、GBase类型、PostgreSQL类型、神通类型、Sybase类型、HighGo类型

数据库地址

使用的数据库地址

数据库实例名

Sqlserver选填项,如不填写默认实例名

数据库端口

使用的数据库端口,默认即可。如果数据库端口有修改,需要做对应修改

数据库名称

使用的database,此例中使用的是DB2

数据库用户名

使用的数据库用户(具有dba和远程连接权限)

数据库密码

使用的用户密码

Jdbc参数

Mysql的jdbc参数可选择配置,默认即可

大字段病毒检测

用于对数据库大字段类型的病毒过滤

 

(2)     前置同步数据库配置完成后,测试连接。

点击测试连接,提示测试成功。

图7 测试连接

 

测试成功后,点击保存。

图8 查看同步数据库配置-前置机

 

(3)     添加后置同步数据库

登录secrecy用户,依次点击:数据库同步>同步数据库配置>添加,添加数据库配置如下。

图9 添加后置同步数据库

 

(4)     后置同步数据库配置完成后,测试连接。

点击测试连接,提示测试成功。

图10 测试连接

 

测试成功后,点击保存。

图11 查看同步数据库配置-后置机

 

2. 关联数据库

(1)     前置关联数据库

依次点击:数据库同步>关联数据库,添加保存关联数据库。

图12 前置关联数据库配置-选择增量同步

查看前置关联的数据库

图13 前置关联的数据库

表3 关联数据库参数说明

参数

说明

关联名称

自定义的关联数据库的名称

同步方式

增量同步:同步更新数据

历史同步:同步旧数据和新数据;以同步方向目的表为准:两端表存在不一致的数据时,目的表数据不被覆盖;以同步方向源表为标准:两端表存在不一致的数据时,目的表数据被覆盖

同步开始时间

自定义数据同步开始的时间,增量同步下生效

同步结束时间

自定义数据同步结束的时间,增量同步下生效

开启定时同步

数据同步完成后,间隔多长时间进行下一次扫描同步,历史同步下生效

是否记录日志

历史同步支持配置是否记录日志

扫描间隔(s)

添加扫描间隔时间配置

本端节点ID

用于和对端节点ID匹配

对端节点ID

用于和本端节点ID匹配

(2)     后置关联数据库

依次点击:数据库同步>关联数据库,添加保存关联数据库。

图14 后置关联数据库配置-选择增量同步

查看后置关联的数据库

图15 后置关联的数据库

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3. 同步表配置

明确同步方向,按照以下原则在对应的前后置机上进行配置;

若数据库表同步方向为前到后,需要在前置进行配置;

若数据库表同步方向为后到前,需要在后置进行配置;

若数据库表同步方向为双向,则需要在前后置分别配置。

以前置机同步表配置为例,依次点击:数据库同步>同步表配置,右上角选择已关联的数据库,点击”+”,添加同步表。

图16 添加前置同步表

 

添加同步表配置:使用源schema和目的schema过滤,点击查询源表和查询目的表,查询成功后下拉选择需要同步的源表和目的表,同步配置勾选插入、修改、删除,保存配置。

图17 同步表配置

 

以“AGE≥2222”为同步条件,进行数据同步。

图18 自定义条件同步配置

表4 同步表管理参数说明

参数

说明

前置表

自动查询前置表,并选择要同步的数据表

前置schema

根据数据库类型选择对应的schema约束限定为指定的数据库;Oracle/DB2/Sqlserver/DM/kingbase/postgresSQL/神通/highgo/sybase配置同步时,需要使用正确的shcema

后置schema

根据数据库类型选择对应的schema约束限定为指定的数据库;Oracle/DB2/Sqlserver/DM/kingbase/postgresSQL/神通/highgo/sybase配置同步时,需要使用正确的shcema

后置表

数据库关联后,自行查询后置表,并选择要同步的数据表

自定义列同步

自定义哪个列需要同步

自定义列同步-自定义过滤策略

指定哪个自定义列列使用过滤条件,满足过滤条件的不进行同步

自定义条件同步

指定列在满足条件下才进行同步,不满足条件的列不进行同步

同步条件

给指定列选择一个条件,只有满足这个条件,数据操作都会同步

表冲突决策

主键检查决策:表示仅使用主键来检测冲突。如果存在具有相同主键的行,则在更新或删除期间不会检测到冲突。更新和删除行仅使用主键列进行解析。如果在插入期间已经存在行,则检测到冲突。

被改变的数据(已更改数据检测):表示将使用主键加上源系统上已更改的任何数据来检测冲突。如果目标系统上存在与源系统上已更改列的旧值相同的行,则在更新或删除期间不会检测到冲突。如果在插入期间已经存在行,则检测到冲突。(如数库中包含主键,则会将定义的主键和已更改数据同时作为检测判断依据)。

旧值(旧数据值检测):表示所有旧数据值都用于检测冲突。旧数据是更改之前源系统上的行的数据值。如果目标系统上存在与源系统上相同的旧值的行,则在更新或删除期间不会检测到冲突。如果在插入期间已经存在行,则检测到冲突。(如数库中包含主键,则会将定义的主键和旧数据值同时作为检测判断依据)。

时间截(时间戳列检测):指示主键加上时间戳列“date”将指示是否发生冲突。如果目标时间戳列不等于旧的源时间戳列,则检测到冲突。如果在插入期间已经存在行,则检测到冲突。 您必须要指定时间戳的列的名称,如“date”。(如数库中包含主键,则会将定义的主键和时间戳列同时作为检测判断依据,时间类型:datedatetime)。

版本(版本列检测):表示主键加上版本列“version”将指示是否发生冲突。如果目标版本列不等于旧的源版本列,则检测到冲突。如果在插入期间已经存在行,则检测到冲突。 您必须要指版本号的列的名称,如“version”。(如数库中包含主键,则会将定义的主键和版本列同时作为检测判断依据,版本类型:intnumber)。

冲突列设置

前置时间列:选择时间的列名(datedatetime

后置时间列:选择时间的列名(datedatetime

前置版本列:选择version的列名(intnumber

后置版本列:选择version的列名(intnumber

表冲突决策机制

手动解决:当检测到冲突时,批处理将保持错误,直到发生手动干预。插入想要插入的值,或者选择忽略。

软件自主判断:表示当检测到冲突时,系统应自动应用更改。如果源操作是插入,则将尝试更新。如果源操作是更新并且该行不存在,则将尝试插入。如果源操作是删除并且该行不存在,则删除将被忽略。

忽略:表示当检测到冲突时,系统应自动忽略传入的更改。

比较:表示当检测冲突时,系统会以最新的为准。

 

图19 同步表添加成功

 

IMG_256

自定义列同步,两个数据表选择的列长度和列类型需要保持一致;

同步表仅配置前置,方向为前到后同步;

同步表仅配置后置,方向为后到前同步;

同步表配置两端,方向为双向同步;

注意数据库同步配置请按照:配置同步数据库-关联数据库-配置同步表的步骤进行配置。

数据库中已经配置过同步的表,请勿直接删除。删除前请先清除平台数据同步中的相关配置。删除请严格按照“同步表配置”、“关联数据库”、“同步数据库配置”顺序依次执行删除操作。

数据库同步配置完成后,请勿对数据库中同步的表做变更修改。不能修改的范围包括表中的字段、表名、表结构、表空间等。随意修改这些内容会导致同步异常。

平台数据库同步功能会在两边数据库中创建多张“SYM_”开头的缓存表。这些表单用于缓存导出和导入的数据,请勿删除或修改,否则会导致同步异常。

当同步表之间存在主外键依赖关系时,这些表的配置顺序有一定要求。当配置添加同步表为引用表或包含外键时,遵循引用表后增,后改,先删;被引用表先增,先改,后删的原则进行添加修改删除。假设A表中存在外键,该外键时B表的主键,即A表引用B表。

 

3.5  验证配置

3.5.1  测试验证说明

测试之前确保平台前、后置侧的网络是互通的,数据库同步配置没有问题。

向前置端HOST1中插入多条数据后,点击运行:

 

图20 向前置数据库添加数据

向前置端HOST1中插入多条数据后,点击运行:

 

图21 向后置数据库添加数据

3.5.2  在后置数据库客户端,查看数据是否同步到目的表

等待约30s后,查看后置数据库数据是否同步。AGE≥2222的数据与前置数据库表AGE≥2222的数据一致,其他数据未变化,则说明同步成功。

图22 查看后置数据库表

由上图可知,同步成功。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。 H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们