DMHS命令行搭建部署——DM8至DM8

2023-10-11 05:32
文章标签 部署 搭建 命令行 dm8 dmhs

本文主要是介绍DMHS命令行搭建部署——DM8至DM8,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 一、部署前准备工作 

1.1、源端目的端都修改dm.ini参数,设置归档标记和逻辑日志标记:

ARCH_INI=1RLOG_APPEND_LOGIC=1

重启数据库实例后查询数据库归档状态​​​​​​​

SQL> select arch_mode from v$database; LINEID     ARCH_MODE----------     ---------1           Yused time: 3.236(ms). Execute id is 123.

可以用如下语言查询数据库附加日志状态​​​​​​​

SQL> select * from v$dm_ini where para_name='RLOG_APPEND_LOGIC'; LINEID     PARA_NAME        PARA_VALUE MIN_VALUE MAX_VALUE----------     -----------------           ----------         ---------       ---------1          RLOG_APPEND_LOGIC    1              0              2 used time: 2.016(ms). Execute id is 125.

  

1.2、源端目的端都配置dmarch.ini(归档日志):​​​​​​​

[ARCHIVE_LOCAL1]ARCH_TYPE = LOCALARCH_DEST = /home/dmdba/dmarch #归档目录ARCH_FILE_SIZE = 128 #归档文件大小,单位 MBARCH_SPACE_LIMIT = 2048#空间大小限制,0 表示不限制 

1.3、DDL同步配置:

执行DDL同步脚本方式。在源端DM7/DM8数据库中以SYSDBA用户执行DDL同步脚本,在SYSDBA模式下创建相关DMHS系统表及触发器,并在DMHS配置文件中配置ddl_mask参数选项以启用该功能。​​​​​​​

./disqlSQL> conn SYSDBA/rootrootrootSQL> start /opt/ddl_sql_dm8.sqlSQL> exit

二、安装部署 

2.1、目的端部署流程

先启动目的端,配置dmhs.hs:​​​​​​​

<?xml version="1.0" encoding="GB2312" standalone="no"?><dmhs>    <base>        <lang>ch</lang>        <mgr_port>5345</mgr_port>        <name>exec</name>        <ckpt_interval>60</ckpt_interval>        <siteid>3</siteid>        <version>2.0</version>    </base>    <exec>        <recv>            <mgr_port>5345</mgr_port>  <!-- 接收管理端口-->            <data_port>5346</data_port> <!-- 接收数据端口-->        </recv>        <db_type>DM8</db_type>        <db_server>127.0.0.1</db_server>          <db_user>SYSDBA</db_user>  <!-- 数据库用户名-->        <db_pwd>SYSDBA</db_pwd> <!-- 数据库用户名的密码-->        <db_port>5236</db_port><!-- 数据库端口号-->    </exec></dmhs>
[dmdba@localhost bin]$ ./dmhs_server dmhs.hs

2.2、配置源端 

进入bin目录,配置dmhs.hs:​​​​​​​

<?xml version="1.0" encoding="GB2312" standalone="no"?><dmhs><base>        <lang>ch</lang>        <mgr_port>5345</mgr_port> <!-- 管理端口号-->        <ckpt_interval>60</ckpt_interval> <!-- 检查点间隔-->        <siteid>1</siteid> <!-- 源端站点编号--></base><cpt>        <db_type>DM8</db_type>        <db_server>127.0.0.1</db_server>          <db_user>SYSDBA</db_user> <!--数据库用户名-->        <db_pwd>SYSDBA</db_pwd>         <db_port>5236</db_port> <!--源端数据库监听端口号-->        <idle_time>10</idle_time>  <!—cpt休眠时间-->        <parse_thr>1</parse_thr>         <ddl_mask>OP:OBJ:REC</ddl_mask> <!--DDL同步参数-->        <arch>    <clear_interval>60</clear_interval>  <!--归档日志清理间隔(s)-->    <clear_flag>0</clear_flag> <!--归档删除标识-->        </arch>-->        <send>        <ip>192.168.209.129</ip>  <!--投递到下一级的ip地址-->        <mgr_port>5345</mgr_port> <!--下一级的管理端口-->        <data_port>5346</data_port> <!--下一级的NET模块监听端口-->        <net_turns>0</net_turns>        <trigger>1</trigger>        <constraint>1</constraint>         <identity>1</identity>                <filter> <!--过滤规则-->                        <enable>                                <item>SYSDBA.*</item>                        </enable>                        <disable/>                </filter>                 <map>  <!--映射规则-->                </map>        </send></cpt>
[dmdba@localhost bin]$ ./dmhs_server dmhs.hs

  

2.3、F&Q

启动执行模块时出现错误,库文件libdmhs_exec.so未找到

此时要卸载dmhs重装,因为执行端装了精简版,应该装web版

在dmhs目录下卸载,./uninst.sh -i

重新安装,然后修改环境变量:

export LD_LIBRARY_PATH=/home/dmdba/dmhs/bin:/home/dmdba/dmhs/db/bin

让环境变量生效source /home/dmdba/.bash_profile后,查询一下:

三、初始装载 

DMHS初始装载有两种:初始字典装载和初始数据装载。

DMHS同步源端在首次启动日志分析进行数据同步之前,需要进行初始字典装载操作,在程序目录下创建DICT文件夹,并将同步表的字典信息写入文件保存在磁盘上,然后才能启动源端日志分析模块功能。

初始数据装载主要用于将同步源端的数据装载到目的端,保持源端和目的端的数据初始一致。如果没有数据装载的需求,可以不用进行该操作。

3.1、启动目的端执行服务

初次启动目的端DMHS服务时,同步执行服务并未开启,需要使用DMHS控制台工具连接DMHS管理服务,手动输入start exec命令开启。

3.2、进行初始字典装载

copy  0 " sch.name='SYSDBA' " DICT

3.3、F&Q

出现错误:libcpt_dm8.so未找到

排查后发现精简安装缺少这个,可以从另一个虚拟机上发送过来

scp 192.168.209.181:/home/dmdba/dmhs/db/bin/*.so ./

说明:so文件来自于dmdci.zip压缩文件。

修改环境变量

export LD_LIBRARY_PATH=/home/dmdba/dmhs/bin:/home/dmdba/dmhs/db/bin:/home/dmdba/dmhs/bin/lib

重新启动

./dmhs_server dmhs.hs

输入:

copy 0 " sch.name='SYSDBA' " dict

四、同步链接测试 

在搭建完同步链路之后简单测试一下同步

4.1 、 DDL同步功能测试

使用管理工具,在源端创建两个表:

浏览表数据,修改

Table_1

Table_2 

在目的端未发现

在源端上操作:

copy 0 "sch.name='SYSDBA'" clear|dict

重新装载离线字典

copy 0 "sch.name='SYSDBA'" create|insert

重新查看

可以发现两张表已装载

4.2 、表修改数据同步功能测试

启动捕获

start cpt

修改表内数据

保存后查看目的端:

两边已同步,证明搭建成功。

这篇关于DMHS命令行搭建部署——DM8至DM8的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/185893

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5