达梦HS

一、原理上
多运用于异构数据库之间的同步,本文简单介绍dm之间的HS部署。
配置文件使用XML格式,存放于DMHS程序安装目录的bin文件夹下,可以用dmhs.hs命名,使用dmhs.xml命名时会导致客户端无法正确修改配置文件,不推荐使用。
二、元素讲解(常见)
作为xml文件,元素名区分大小写,元素是指<>里的。
1.MGR
MGR配置在dmhs.hs配置文件中对应base元素,配置同步服务的DMHS服务器管理模块,如同客户端通讯的监听端口、语言项、站点号等。配置文件dmhs.hs中的base元素以标签开始,以标签结束。
1.1siteid
站点号,取值范围在1~ 30000,常见的都是从1,2配起。
站点号是同步节点在同步链路中的唯一标识,配置时请确保它的唯一性
siteid会被CPT用来标识日志消息来源,如果一个配置文件中存在多个CPT,那么,这些CPT用来标识消息的站点号都是相同的,所以一个同步节点的站点号应该是一样的。
1.2lang
语言选项,ch代表简体中文;en代表英文,默认值ch
该参数不仅会影响dmhs_server的输出,同样会影响到dmhs_console客户端的语言输出
1.3mgr_port
管理端口,取值范围在1000~65535
同步服务起动以后,会监听该端口上的连接,用于执行客户端工具发过来的命令和接收统计信息
1.4 ckpt_interval
检查点间隔,取值范围在10~ 65535,
默认值60
当同步服务中存在EXEC模块(此存在于目的端)时,该参数表示EXEC模块检查点刷新的时间间隔,单位为秒
2.CPT配置
CPT模块是日志分析模块,CPT在首次启动时,要进行初始化加载需要同步的表的字典信息,需要在CPT中配置源数据库连接相关的信息,包括连接数据库的用户名和口令。
1.2.db_type
捕获源端的数据库类型,目前源端支持的数据库有DM6、DM7、ORACLE9i以上版本、MYSQL、POSTGRES、DB2、SQLSERVER、ORACLE RAC、DM7 MPP
1.3.db_server
源端数据库的服务名,如果数据库不支持服务名,也可以填写IP
通常源为ORACLE数据库时,需要配置服务名,其它类型的数据库可以配置实际的IP。当DM6或DM7作为源时,如果数据库的启动端口不是默认端口,可以使用服务名的方式进行配置
1.4.db_user
连接源端数据库的登录名或用户名,由于CPT分析时需要查询系统表或系统提供的动态视图,所以权限要尽可能大,不一定非要是同步的那个模式用户,可以是SYSDBA,或者有dba权限的用户,当源是DM6或SQLSERVER时,该参数需要配置为相应的登录名,其它类型数据库请配置用户名
1.5.db_pwd
源端数据库登录口令,db_user参数对应的口令,默认为明文,如需配置密文,请配合pwd_encipher参数
1.6.db_port(就是dm.ini里的PORT_NUM)
源端数据库的监听端口号,取值范围在0-65535
1.7.ddl_mask
DDL操作功能掩码,默认值TABLE:OP
如果需要同步DDL操作,那么就需要配置该掩码,该掩码默认值为TABLE:OP
1.8.parse_thr
日志分析线程数,取值范围在1-32,默认值1。
该参数仅对源端数据为DM7时有效,只能用在没有DDL的环境下。
1.9arch
1.9.1clear_flag
归档日志清理选项,选配0(不操作)、1(删除)、2(移走)、3(延迟删除),默认0
1.9.2clear_interval
归档日志清理间隔,取值范围在60-65535,单位秒
1.9.3.bak_dir
备份归档文件的路径,该功能在clear_flag配置为2时才起作用,清理归档时会把能清理的归档移到该目录下
1.10.send
CPT投递信息配置,该功能的实现依赖于NET模块,
具体的设计请参考NET模块SEND配置说明
1.10.1.db_ssl_path
连接源端数据库时使用的SSL链路安全库路径。
该参数只针对数据源类型为DM7的同步环境有效
1.10.2.db_ssl_pwd
连接源端数据库时使用的SSL链路的加密口令
该参数只针对数据源类型为DM7的同步环境有效
1.10.3.ip
需在投递到下一级的IP地址
1.10.4 mgr_port
管理命令本地监听的数据端口号
1.10.5. data_port
数据来自本地监听的数据端口号
1.10.6. trigger
指示下一级数据入库时,是否需要禁用触发器,0(关闭禁用)或1(启用禁用),默认值为0。该配置参数只针对下一级的EXEC模块数据库为DM系列时有
1.10.7. constraint
指示下一级数据入库时,是否需要禁用约束,0(关闭禁用)或1(启用禁用),默认值为0。该配置参数只针对下一级的EXEC模块数据库为DM系列才有效
1.10.8.identity
指示下一级数据入库时,自增列处理方式,0(启用)或1(忽略),默认值为1
1.10.9.net_turns
是否启用网闸模式,0(禁用)或1(启用)
1.10.10.filter
1.10.10.1. enable
NET模块过滤规则白名单设置
1.10.10.2.item
NET模块过滤规则白名单设置项,支持模糊匹配符*
1.10.11. map
NET模块对投递对像名进行映射,但真正的映射操作则是由EXEC模块完成
1.10.11.1.item
NET模块对像名进行映射项,支持模糊匹配符*。.
EXEC
EXEC模块用来进行数据入库,在这里需要配置的参数有数据库连接信息、事务缓存信息以及事务入库的方式等。与base标签同级,只能配置一个EXEC标签
1.1 db_type
数据入库的数据库类型,该参数指明了EXEC模块关联的数据库类型
1.2 db_server
数据库的服务名,该参数会被填入ODBC连接串,用来跟数据库建立连接。ORACLE数据库要填服务名、SQL SERVER需要填机器名、DM则需要填服务名或IP
1.3 db_user
登录数据库的用户名,该参数会被填入ODBC连接串,用来跟数据库建立连接。DM6同步时目标端必须使用SYSDBA登录。
1.4 db_pwd
登录数据库的用户口令,该参数跟db_user对应,如果配置了pwd_encipher参数,则需要填写加密后的口令。
1.5 db_name
登录数据库的库名,该参数只对多库结构的数据库有效
1.6 db_port
登录数据库的端口号,如果数据库是以默认端口号启动的,则不用配置该参数,否则请配置相应的端口号。
1.7 exec_thr
EXEC模块用来数据入库的工作线程数,取值范围在1-1024,默认值1
1.8 exec_sql
EXEC模块缓存事务SQL语句的内存大小,取值范围在32-40960,单位M,默认值512。
1.9 exec_trx
允许缓存事务的个数,取值范围在1000-10000,默认值5000
1.10exec_row
数据入库时允许的最大批量行数,取值范围在1-2000,默认值1.
1.11.recv
数据来源配置,
三、部署
最好是按照安装包自带的版本进行部署
注意事项:
1.可以采用root用户安装,最后整个dmhs的属组dmdba
2.环境变量配一下,在系统配或者服务脚本里
其他的按照手册执行即可。

你可能感兴趣的:(达梦HS)