DM数据库学习之路(二十)DM8基于主备集群技术的两地三中心集群部署及测试(全网最详细)

  1. DM两地三中心介绍

    1. 摘要

金融行业对数据的可靠性和连续性有着极其严格的要求,任何数据丢失或服务中断都可能导致严重的经济损失。针对这一问题,基于达梦主备集群技术的两地三中心解决方案能够切实有效解决业务数据的可靠性和连续性需求。该方案通过构建两个数据中心和一个灾备中心,确保了数据的可靠性和业务的连续性,从而避免了因数据丢失或服务中断可能带来的经济损失。

    1. 容灾能力等级

数据库作为金融行业基础底座软件,在整个金融行业有着举足轻重的地位,随着国产数据库在金融行业推广的深入,目前国产数据库在金融领域已初具规模,并且在产品的改进,生态适配的融合,项目经验积累方面已经有相当的成果,在性能及功能上满足了金融行业外围系统的基本要求。金融行业为推进核心业务系统国产化改造,对国产数据库提出了更高要求,其中灾备作为改造中的重要指标。人民银行发布的《银行业信息系统灾难恢复管理规范》中明确了RTO/RPO与灾难恢复能力等级的关系,如下表:

灾难恢复能力等级

RTO

RPO

1

2天以上

1天至7天

2

24小时以上

1天至7天

3

12小时以上

数小时至1天

4

数小时至2天

数小时至1天

5

数分钟至2天

0至30分钟

6

数分钟

0

《规范》明确了银行的核心系统的灾难恢复能力最低应达到5级,即RT0=数分钟至2天,RPO=0至30分钟。达梦依据银行的容灾需求,设计出了一套达梦金融两地三中心解决方案。方案是基于达梦自身的产品,由达梦数据库管理系统DM8与达梦数据守护集群软件DM DataWatch共同构建。这套解决方案充分发挥了集中式数据库的性能,能够保障中心之间数据的一致性,提升数据的可靠性和安全性。同时,达梦数据守护集群可以实现故障秒级切换,确保业务的高可用性,从而提升用户的使用体验。此外,这套方案是基于达梦自主原创的产品,达梦可以根据用户的需求对方案进行配置,以便提供定制化服务。在灾难恢复能力方面,达梦金融两地三中心的能力等级已经达到《银行业信息系统灾难恢复管理规范》中的6级标准,完全满足金融行业核心系统建设需求。

    1. 两地三中心架构

达梦的两地三中心容灾系统属于数据级的容灾,主要目的是满足数据中心的高可用和灾难恢复能力,确保业务连续性和数据安全,高可靠、高安全、低成本、易维护,适用于对业务高可用性和数据安全具有极高标准的行业或系统。用户可以在达梦的两地三中心架构基础上构造应用级或业务级容灾系统。

      1. 概念定义

  • 两地三中心:一种高可用性容灾方案,三个数据中心并存,能在任意两个数据中心受损的情况下,最大限度保障核心业务的连续运行,大大提高核心系统的可用性。
  • 生产中心:即主中心,承担日常业务压力,对外提供服务。
  • 同城容灾中心:是指在同城或邻近城市(通常要求距离主中心10km到200km)建立可独立承担关键系统运行的数据灾备中心,应用可在不丢失数据的情况下切换到同城灾备中心运行,保持业务连续运行,是两地三中心容灾方案的第一级容灾保护。
  • 异地容灾中心:是指在异地的城市(通常要求距离主中心200km以上)建立一个数据灾备中心,应对区域性重大灾难,是两地三中心容灾方案的第二级容灾保护。
  • RTO:灾难发生后,信息系统从停顿到必须恢复的时间要求。
  • RPO:灾难发生后,数据必须恢复到的时间点要求。
  • 运维管理平台:提供数据库管理,监控和维护的功能,实现远程管理和监控数据库实例及数据库集群的平台软件。
  • 灾备管理控制端:支持同时访问三个数据中心,支持部署运维管理平台,提供日常监控运维及故障切换处理的操作平台。
  • DEM:达梦数据库运维管理平台软件。
      1. 网络要求

        1. 城域网要求
  • 容灾网络距离:<100km,裸光纤连接。
  • 传输延迟:<1ms (单向)。
  • 网络真实带宽:大于业务的峰值写IO带宽。
        1. 广域网要求
  • 容灾网络距离:无限制。
  • 传输延迟:<50ms (单向)。
  • 网络真实带宽:大于业务的平均写IO带宽。
        1. 灾备管理控制端网络要求
  • 需要三中心间通信。
  • 网络距离要求:无限制。
  • 通信网络带宽要求:≥10Mb/s。
      1. 软硬件配置推荐

        1. 硬件配置推荐

硬件类型

CPU(C)

内存(G)

存储(G)

数量

备注

数据库服务器

64+

128+

SSD

5

根据业务实际需求配置

监视器服务器

8

16

SATA

5

根据业务实际需求配置

运维管理服务器

16+

32+

SATA

1

根据业务实际需求配置

交换机

--

--

--

5

AB中心各1台万兆交换机和1台千兆交换机,C中心一台千兆交换机

        1. 软件配置推荐

类型

软件名称及版本

数量

备注

操作系统

CentOS7.6或银河麒麟V10

11

需要按装gcc、gdb、unixODBC、perf等包

数据库

达梦数据库管理系统V8

11

-

集群组件

达梦数据守护集群软件V8

5

-

运维管理平台

达梦运维管理平台DEM V3.0

1

-

      1. 方案架构

架构说明:拟在甲乙两地构建三中心的数据容灾系统,A为主业务中心,配置一主一备两个数据库节点,承担日常业务,具备单节点故障自动切换能力。B为同城灾备中心,配置两个实时备库,不参与自动切换;A中心整体故障时,B中心手动接管业务,数据不丢失。C中心为异地灾备中心,配置一个异步备库,在甲地灾难情况下手动接管业务,满足监管需求。
有条件情况下,建议在灾备管理控制端配置一台运维管理服务器,部署达梦运维管理平台DEM,用于日常监控运维。

      1. 方案能力

当前,达梦两地三中心方案提供如下能力:
(1)容灾能力达到《银行业信息系统灾难恢复管理规范》要求6级,RTO和RPO完全满足一类金融信息系统要求,生产中心内RPO=0,RTO<10S,同城灾备中心间RPO=0、RTO<30s,异地灾备中心RPO=1~60s、RTO<60s。
(2)高可用能力,保证核心业务系统可以7*24小时运行,各种软硬件故障下依然可提供安全可靠的数据服务,保障数据可靠性和业务连续性。
(3)事务ACID特性,达梦基于主备的两地三中心方案事务特性满足单实例事务ACID特性,满足金融核心交易级别强一致性要求。
(4)该方案可完全基于国产化软硬件环境进行部署和实施,满足行业对于信创项目建设相关要求。
(5)本方案可满足金融业核心系统日常运行和切换演练的常态化要求。

      1. 方案优势

达梦两地三中心方案优势如下:

  1. 主库可以向多个实时备库并行发送日志,响应速度更快,备中心的故障对主中心无任何影响,系统稳定性更高。
  2. 架构简捷灵活。达梦提供的架构简单成熟,易维护,在发生灾难时后续应急处理操作简洁。切换规则可配置灵活,可根据需要指定备库是否参与自动切换(一般配置同中心同机房自动切换)。
  3. 备库具备提供查询能力,承担诸如历史数据查询、报表等业务,分担业务压力。
  1. DM两地三中心规划

    1. A中心集群规划

      1. A中心主机规划

主机

类型

主机名

业务IP

数据库名

实例名

操作系统

A主库

(A1)

dm8a01

业务:84.0.191.100

私网:10.10.10.100

CUGDB

ACUGDB01

Kylin-Server-V10-SP3

A备库

(A2)

dm8a02

业务:84.0.191.101

私网:10.10.10.101

CUGDB

ACUGDB02

Kylin-Server-V10-SP3

A确认监视器

dm8amonitor

私网:10.10.10.102

      1. A中心端口规划

实例名

PORT_NUM

MAL_INST_DW_PORT

MAL_HOST

MAL_PORT

MAL_DW_PORT

ACUGDB01

5236

5336

10.10.10.100

5436

5536

ACUGDB02

5236

5336

10.10.10.101

5436

5536

      1. A中心目录规划

类型

实例端口

实例目录

归档目录

日志目录

备份目录

主库

5236

/dm8/data/CUGDB

/dm8/data/CUGDB/arch

/dm8/data/CUGDB/log

/dm8/backup

备库

5236

/dm8/data/CUGDB

/dm8/data/CUGDB/arch

/dm8/data/CUGDB/log

/dm8/backup

监视器

/dm8/data/monitor

    1. B中心集群规划

      1. B中心主机规划

主机

类型

主机名

业务IP

数据库名

实例名

操作系统

B主库

(B1)

dm8b01

业务:84.0.191.103

私网:10.10.10.103

CUGDB

BCUGDB01

Kylin-Server-V10-SP3

B备库

(B2)

dm8b02

业务:84.0.191.104

私网:10.10.10.104

CUGDB

BCUGDB02

Kylin-Server-V10-SP3

B观察监视器

dm8bmonitor

私网:10.10.10.105

      1. B中心端口规划

实例名

PORT_NUM

MAL_INST_DW_PORT

MAL_HOST

MAL_PORT

MAL_DW_PORT

BCUGDB01

5236

5336

10.10.10.103

5436

5536

BCUGDB02

5236

5336

10.10.10.104

5436

5536

      1. B中心目录规划

类型

实例端口

实例目录

归档目录

日志目录

备份目录

主库

5236

/dm8/data/CUGDB

/dm8/data/CUGDB/arch

/dm8/data/CUGDB/log

/dm8/backup

备库

5236

/dm8/data/CUGDB

/dm8/data/CUGDB/arch

/dm8/data/CUGDB/log

/dm8/backup

监视器

/dm8/data/monitor

    1. C中心集群规划

      1. C中心主机规划

主机

类型

主机名

业务IP

数据库名

实例名

操作系统

C主库

(C1)

dm8c01

业务:84.0.191.106

私网:10.10.10.106

CUGDB

CCUGDB01

Kylin-Server-V10-SP3

C观察监视器

dm8cmonitor

私网:10.10.10.107

      1. C中心端口规划

实例名

PORT_NUM

MAL_INST_DW_PORT

MAL_HOST

MAL_PORT

MAL_DW_PORT

CCUGDB01

5236

5336

10.10.10.106

5436

5536

      1. C中心目录规划

类型

实例端口

实例目录

归档目录

日志目录

备份目录

主库

5236

/dm8/data/CUGDB

/dm8/data/CUGDB/arch

/dm8/data/CUGDB/log

/dm8/backup

监视器

/dm8/data/monitor

  1. DM两地三中心实施

    1. ABC中心集群部署

      1. A中心集群安装及初始化

        1. A1数据库dm8a01初始化
          1. DM8安装

          1. 配置环境变量

vi .bash_profile

export DM_HOME=/dm8

export PATH=$DM_HOME/bin:$PATH:$DM_HOME/tool:$PATH:HOME/bin:/usr/local/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin

. .bash_profile 让其生效

          1. 初始化

# su – dmdba

$ cd /dm8/bin

./dminit path=/dm8/data EXTENT_SIZE=16 PAGE_SIZE=32 case_sensitive=1 charset=1 log_size=2048 db_name=CUGDB instance_name=ACUGDB01 PORT_NUM=5236 LENGTH_IN_CHAR=1 BLANK_PAD_MODE=0 SYSDBA_PWD="SYSDBA2023" SYSAUDITOR_PWD="SYSDBA2023"

          1. 注册数据库服务

$ ./dmserver /dm8/data/CUGDB/dm.ini

# cd /dm8/script/root

#./dm_service_installer.sh -t dmserver -dm_ini /dm8/data/CUGDB/dm.ini -p ACUGDB01

# systemctl start DmServiceACUGDB01

          1. 开启归档

$ mkdir -p /dm8/data/CUGDB/arch

$ disql SYSDBA/SYSDBA2023@127.0.0.1:5236

SQL> alter database mount;

SQL> alter database add ARCHIVELOG 'type=local,dest=/dm8/data/CUGDB/arch,file_size=1024,space_limit=0';

SQL> alter database ARCHIVELOG;

SQL> alter database open;

SQL> select arch_mode from v$database;

          1. 设置OGUID并修改数据库模式

主库(以mount形式启动)

$ /dm8/bin/DmServiceACUGDB01 stop

$ /dm8/bin/dmserver  /dm8/data/CUGDB/dm.ini mount

打开另外一个窗口,以上窗口不要关闭

$ disql SYSDBA/SYSDBA2023@127.0.0.1:5236

SQL> SP_SET_PARA_VALUE(1, 'ALTER_

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/719068.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MyBatis标签获取数组或者集合长度的方法

1、判断列表长度&#xff1a; <if test"list ! null and list.size() > 0">... </if> 可结合in条件使用&#xff1a;SELECT * FROM users<where><if test"idList ! null and idList.size() > 0">id IN<foreach item"…

leetcode热题100学习计划-链表-相交链表

思路 两条链表长短不一&#xff0c;找公共交点必须先对齐。记录两个链表各自长度&#xff0c;长的向短的看齐&#xff0c;长的先走多出来的那么一截&#xff0c;之后两者一起走&#xff0c;直到相遇或抵达末尾 代码 /*** Definition for singly-linked list.* public class …

解密Lawnchair:打造个性化极致的Android桌面体验

解密Lawnchair&#xff1a;打造个性化极致的Android桌面体验 1. 简介 Lawnchair是一款知名的Android桌面定制工具&#xff0c;旨在为用户提供个性化极致的桌面体验。作为一个开源项目&#xff0c;Lawnchair融合了简洁、灵活和强大的特点&#xff0c;让用户能够自由定制其Andro…

Python | Conda安装包报错:PackagesNotFoundError

Conda在下载安装包时报错&#xff1a; PackagesNotFoundError: The following packages are not available from current channels:- XXXXXX&#xff08;包名&#xff09;有如下两种解决方法&#xff1a; 方法一&#xff1a;将conda-forge添加到搜索路径上 在命令行运行下方指令…

深入理解C语言:开发属于你的三子棋小游戏

三子棋 1. 前言2. 准备工作3. 使用二维数组存储下棋的数据4. 初始化棋盘为全空格5. 打印棋盘6. 玩家下棋7. 电脑下棋8. 判断输赢9. 效果展示10. 完整代码 1. 前言 大家好&#xff0c;我是努力学习游泳的鱼&#xff0c;今天我们会用C语言实现三子棋。所谓三子棋&#xff0c;就是…

Android 开发环境搭建的步骤

本文将为您详细讲解 Android 开发环境搭建的步骤。搭建 Android 开发环境需要准备一些软件和工具&#xff0c;以下是一些基础步骤&#xff1a; 1. 安装 Java Development Kit (JDK) 首先&#xff0c;您需要安装 Java Development Kit (JDK)。JDK 是 Android 开发的基础&#xf…

TS总结10、ts的 class 类型(配置项strictPropertyInitialization、非空断言)

一、简介 1.类(class)是面向对象编程的基本构件,封装了属性和方法 1.1、属性的类型:类的属性可以在顶层声明,也可以在构造方法内部声明,如果不给出类型;TypeScript 会认为x和y的类型都是any;如果声明时给出初值,可以不写类型,TypeScript 会自行推断属性的类型; c…

【Android 内存优化】怎么理解Android PLT hook?

文章目录 前言什么是hook?PLT hook作用基本原理PLT hook 总体步骤 代码案例分析方案预研面临的问题怎么做&#xff1f;ELFELF 文件头SHT&#xff08;section header table&#xff09; 链接视图&#xff08;Linking View&#xff09;和执行视图&#xff08;Execution View&…

2核4G服务器咋收费的?阿里云贵不贵?

阿里云2核4G服务器多少钱一年&#xff1f;2核4G配置1个月多少钱&#xff1f;2核4G服务器30元3个月、轻量应用服务器2核4G4M带宽165元一年、企业用户2核4G5M带宽199元一年。可以在阿里云CLUB中心查看 aliyun.club 当前最新2核4G服务器精准报价、优惠券和活动信息。 阿里云官方2…

YOLO-World 简单无需标注无需训练直接可以使用的检测模型

参考: https://github.com/AILab-CVC/YOLO-World YOLO-World 常规的label基本不用训练,直接传入图片,然后写入文本label提示既可 案例demo: 1)官方提供 https://huggingface.co/spaces/stevengrove/YOLO-World https://huggingface.co/spaces/SkalskiP/YOLO-World 检测…

基于信息间隙决策理论的碳捕集电厂优化调度程序代码!

适用平台&#xff1a;MatlabYalmipCplex 程序在建立电厂与碳捕集装置协同调度模型的基础上&#xff0c;引入信息间隙决策理论(information gap decision theory, IGDT)以同时满足系统的鲁棒性和经济性要求&#xff0c;通过风险追求和风险规避&#xff12;种决策角度得到不同的…

移动端1px问题,使用vant配合rem后需要处理成1.5px或者2,3,等等,不然ios上显示不出来1px的边框

table{td {border: 1.5px solid #ccc;font-family: PingFang SC, PingFang SC;font-weight: 400;font-size: 24px;color: #4E5464;line-height: 28px;text-align: center;empty-cells: show;padding: 20px 10px;height: 80px;white-space: nowrap;} }table的td样式&#xff0c…

93. 复原 IP 地址(力扣LeetCode)

文章目录 93. 复原 IP 地址题目描述回溯算法回溯优化&#xff08;在原s字符串上操作&#xff09; 93. 复原 IP 地址 题目描述 有效 IP 地址 正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 ‘.’…

真不愧是华为出来的,真的太厉害了。。。

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 实习去了博彦科技&#xff08;外包&#xff09;&#xff0c;做的就是螺丝钉的活&#xff0c;后面…

华为---MSTP(一)---MSTP生成树协议

目录 1. MSTP技术产生背景 2. STP/RSTP的缺陷 ​编辑 2.1 无法均衡流量负载 2.2 数据使用次优路径 3. MSTP生成树协议 3.1 MSTP相关概念 3.2 MSTP树生成的形成过程 4. MSTP报文 1. MSTP技术产生背景 RSTP在STP基础上进行了改进&#xff0c;实现了网络拓扑快速收敛。但…

chisel入门初步2_2——-1/2次方生成器

由之前的GCN网络的介绍可以得知&#xff0c;我们需要输入两个乘数&#xff08;两个节点的节点度&#xff09;&#xff0c;并输出他们乘积的-1/2次方&#xff0c;此处由于当时设计的booth编码的乘法器为有符号数&#xff0c;而此处是无符号数&#xff0c;实在懒得再写一份了&…

SpringBoot+Maven项目打包

项目的主POM文件里面添加maven打包插件 <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.2</version><configuration><sour…

推荐一款新的自动化测试框架:DrissionPage

今天给大家推荐一款基于Python的网页自动化工具&#xff1a;DrissionPage。这款工具既能控制浏览器&#xff0c;也能收发数据包&#xff0c;甚至能把两者合而为一&#xff0c;简单来说&#xff1a;集合了WEB浏览器自动化的便利性和 requests 的高效率优点。 一、DrissionPage框…

【C++庖丁解牛】默认成员函数

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 前言1. 构造函数1.1 …

android系统签名

系统签名是指由 Android 系统或设备制造商使用他们的私钥对应用程序进行数字签名的过程。在 Android 应用程序开发中&#xff0c;应用程序的 APK 文件需要使用开发者的私钥进行签名&#xff0c;以便在安装和更新时验证应用程序的真实性和完整性。 系统签名是一种特殊的签名&am…