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

相关文章

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域