达梦数据库同步部署方案「建议收藏」

达梦数据库同步部署方案「建议收藏」达梦数据复制(DATAREPLICATION)是一个分担系统访问压力、加快异地访问响应速度、提高数据可靠性的解决方案。将一个服务器实例上的数据变更复制到另外的服务器实例。可以用于解决大、中型应用中出现的因来自不同地域、不同部门、不同类型的数据访问请求导致数据库服务器超负荷运行、网络阻塞、远程用户的数据响应迟缓的问题。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

达梦数据库同步部署方案

一、部署方案简述

​ 达梦数据复制(DATA REPLICATION)是一个分担系统访问压力、加快异地访问响应速度、提高数据可靠性的解决方案。将一个服务器实例上的数据变更复制到另外的服务器实例。可以用于解决大、中型应用中出现的因来自不同地域、不同部门、不同类型的数据访问请求导致数据库服务器超负荷运行、网络阻塞、远程用户的数据响应迟缓的问题。

​ 服务部署采用分级部署,各地采用独立数据库,各所与局之间进行部分数据同步。

二、部署中涉及到的重要概念

1. 主服务器

发起复制操作的服务器,称为主服务器。

2. 从服务器

接收主服务器发送的数据并进行复制的服务器,称为从服务器。

3. 复制服务器(RPS)

在数据复制环境中,负责配置复制环境,定义复制关系的服务器。 RPS 有且仅有一台,它只负责配置和监控,并不参与到复制过程中。

三、部署方案

配置数据复制在 RPS (复制服务器)上进行。在配置数据复制之前,需要保证复制服务器和所有待配置节点的实例名各不相同,配置好其 MAL 系统并保证网络环境正常。按照复制组、复制关系、复制表映射的顺序配置复制环境。

1. 准备工作

首先准备一台复制数据库,三台需要数据同步的数据库(一个局级数据库,两个所级数据库,这个数据库的数量按照实际需求来)。这里默认所有的数据库已经安装完毕。

参与复制的数据库信息如下:

服务器 实例名 IP 地址 数据库端口号 MAL 端口号
复制服务器(数据库) JD_SERVER_212 192.168.7.212 5240 5241
局服务器(数据库) JD_SERVER_250 192.168.7.250 5240 5242
所服务器一(数据库) JD_SERVER_211 192.168.7.211 5240 5243
所服务器二(数据库) JD_SERVER_213 192.168.7.213 5240 5244

2. 修改dm.ini配置文件

修改对应数据库实例的dm.ini配置文件如下:

数据库 dm.ini 设置
复制服务器(数据库) INSTANCE_NAME = JD_SERVER_212 PORT_NUM = 5240 MAL_INI = 1
局服务器(数据库) INSTANCE_NAME = JD_SERVER_250 PORT_NUM = 5240 MAL_INI = 1
所服务器一(数据库) INSTANCE_NAME = JD_SERVER_211 PORT_NUM = 5240 MAL_INI = 1
所服务器二(数据库) INSTANCE_NAME = JD_SERVER_213 PORT_NUM = 5240 MAL_INI = 1

参数解释:

MAL_INI = 1 #打开MAL系统

注意,复制服务器所在数据库不能参与复制,应该是一个单独的数据库或者数据库实例。

3. 修改dmmal.ini 配置文件

MAL_CHECK_INTERVAL = 2
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = JD_SERVER_212                              
MAL_HOST = 192.168.7.212
MAL_PORT = 5241
MAL_INST_PORT = 5240
MAL_INST_HOST = 192.168.7.212
[MAL_INST2]
MAL_INST_NAME = JD_SERVER_250
MAL_HOST = 192.168.7.250
MAL_PORT = 5242
MAL_INST_PORT = 5240
MAL_INST_HOST = 192.168.7.250
[MAL_INST3]
MAL_INST_NAME = JD_SERVER_211
MAL_HOST = 192.168.7.211
MAL_PORT = 5243
MAL_INST_PORT = 5240
MAL_INST_HOST = 192.168.7.211
[MAL_INST4]
MAL_INST_NAME = JD_SERVER_213
MAL_HOST = 192.168.7.213
MAL_PORT = 5244
MAL_INST_PORT = 5240
MAL_INST_HOST = 192.168.7.213

每个节点的 dmmal.ini 配置必须一致,一个节点配置好后可直接拷贝到另外两个节点。

参数解释:

参数 解释
MAL_CHECK_INTERVAL MAL 链路检测时间间隔
MAL_CONN_FAIL_INTERVAL 判定 MAL 链路断开的时间
MAL_INST_NAME 实例名,和 dm.ini 中的 INSTANCE_NAME 一致
MAL_HOST MAL系统监听TCP连接的IP地址,即为当前机器的IP
MAL_PORT MAL系统监听TCP连接的端口,每个实例必须不一样
MAL_INST_HOST 实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致
MAL_INST_PORT 实例对应的守护进程监听 TCP 连接的端口

4. 复制服务器初始化

​ 通过执行系统函数SP_INIT_REP_SYS(create_flag)来初始化复制服务器。其主要作用是创建复制用户(SYSREP/SYSREP)和创建复制服务器上需要的系统表。SP_INIT_REP_SYS 的参数create_flag 为 1 时表示创建用户和系统表,为 0 时表示删除用户和系统表。

执行示例

SP_INIT_REP_SYS(1);

5.环境初始化

以上工作完成后,即可进行复制环境的配置了。

  1. 重新启动以上所有数据库,启动的顺序不分先后。

  2. 登录复制服务器数据库,保证服务器状态为 OPEN,开始复制配置。

  3. 创建复制组: REP_GRP_JD ,执行如下语句:

SP_RPS_ADD_GROUP('REP_GRP_JD', '主从同步复制');

6.在数据同步服务中执行初始化

部署数据同步服务,比如服务所在ip为30.29.5,那么可以调用如下接口执行初始化配置关系:

post 30.29.5:8090/strategy/init?defalutIp=192.168.7.250&defalutPort=5240

defaultIp指局数据库ip,defalutPort为对应的数据库实例端口

至此,数据库同步服务部署完成。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181818.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 大话数据结构PDF原文内容分享[通俗易懂]

    大话数据结构PDF原文内容分享[通俗易懂]大话数据结构为超级畅销书《大话设计模式》作者程杰潜心三年推出的扛鼎之作!以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。通篇以一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体现抽象内容,对数据结构所涉及到的一些经典算法做到逐行分析、多算法比较。与市场上的同类数据结构图书相比,本书内容趣味易读,算法讲解细致深刻,是一本非常适合自学的读物。获取方式提取码:8i5k目录第1章数据结构绪论1.1开场白1.2你数据结构怎么学的?1.3数据结构起源1.

    2022年6月24日
    34
  • SpringCloud Alibaba完整使用

    SpringCloud Alibaba完整使用搭建AlibabaCloud首先搭建几个环境全部在Linux下1、nacos注册中心2、sentinel流量控制,断路3、apache-skywalking-apm-bin监控接口的速度、效率等等4、Rocketmq的使用项目如下在这里插入代码片首先创建pom工程***Alibaba-Cloud***|<?xmlver……

    2022年6月27日
    39
  • 最详细eclipse汉化插件安装教程

    最详细eclipse汉化插件安装教程教程作者:阿良,欢迎转载,转载请说明出处!本人QQ:583393588,欢迎广大安卓朋友交流!本文与《最详细安卓ADT装教程》是兄弟篇,欢迎查阅:http://blog.csdn.net/dai_zhenliang/article/details/8490837我鄙视那些中文不好而鄙视我用中文的人离线安装中文包方式一:使用下载单独的语言包比如汉化eclipseindig

    2022年6月1日
    36
  • 电压电流转换电路[通俗易懂]

    电压电流转换电路[通俗易懂]前言:昨天看到一篇介绍输出4~20mA电流电路的文章。作者首先介绍了两个直接用运放和三极管搭起来的电路,但并没有给出原理介绍,然后给出了第三种使用集成芯片的电路,并推荐大家使用。不可否认,作为商业产品,集成电路性能优异且更加稳定,方便工程师使用。但是笔者却突然想到了前几天某公司被美国商务部制裁的事件,如果中国的工程师都是“拿来主义”,只会照着参考电路做设计,我们就会永远受制于人,而且对工程师的成长

    2022年6月2日
    42
  • hanoi塔问题如下图所示_hanoi塔问题最经典的算法

    hanoi塔问题如下图所示_hanoi塔问题最经典的算法什么是hanoi塔?汉诺塔问题:古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上。有一个和尚想把这64个盘子从A座移到B座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。如下图问题解答问题定义我们把左边的柱子叫做A,中间的柱子叫做B,右边的柱子叫做Chanoi塔的搬运过程;i

    2025年7月25日
    3
  • Ace在线代码编辑器使用「建议收藏」

    Ace在线代码编辑器使用「建议收藏」这边文章https://blog.csdn.net/liuxiao723846/article/details/106732401介绍了Ace的使用,本文围绕Ace的api深入介绍其具体功能。官网api使用文档:https://ace.c9.io/#nav=howto1、基本配置:ace有许多的配置项可供选择,通过这些配置项可以打造自己的个性编辑器你可以通过setTheme来设置主题,需要注意的是主题文件要存在,并且需要与ace.js同级,命名规则为theme-主题名.jsedito.

    2022年8月14日
    56

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号