达梦数据库(dm8) Centos7 高可用集群

国产数据库-达梦

  • 一、环境详情
  • 二、Centos7 参数优化(所有节点)
  • 三、创建用户(所有节点)
  • 四、开始安装(所有节点)
  • 五、服务注册启动

当前安装:在指定版本环境下 测试,仅供参考

  • 官网描述:
    达梦数据守护集群软件(DM Data Watch)是一种集成化的高可靠性解决方案,该方案基于数据库REDO日志,不依赖于第三方软件和存储,用于解决由于硬件故障、自然灾害等原因导致的数据库服务长时间中断问题,提供不间断数据库服务,可同时满足用户对数据安全性和高可用性的要求。数据守护包含的主要部件有:主数据库、备数据库、联机REDO日志系统、本地REDO日志归档服务、实时REDO日志归档服务、REDO日志重做服务、MAL系统、守护进程和监视器。其中,守护进程和监视器是两个独立的工具,其他部件集成在DM8数据库服务器DMSERVER中。
  • 实时监控:
    达梦数据守护能够提供主备机切换、备机接管、应用自动重连、自动同步历史数据功能,通过监控工具DMWMON,可实时监控主、备数据库的状态和数据同步情况。

一、环境详情

  1. 软件版本

    软件版本下载地址
    Centos 7CentOS Linux release 7.9.2009 (Core) x86清华镜像站: link
    达梦数据库dm8_20230418_x86_rh6_64.zip官网: link
  2. 节点分配
    如有需要还可以多配置一个副监视器(node4),部署方式和node3一致

    节点IP角色数据库名实例名portmal inst_dw_portmal dw_port
    node1192.168.162.221主机DM01DMSERVER0152364510165101
    node2192.168.162.222备机DM01DMSERVER0252364510165101
    node3192.168.162.223主监视器

二、Centos7 参数优化(所有节点)

  1. 关闭防火墙
    可以设置防火墙开放 5236 端口,或者直接关闭防火墙,这里选择直接关闭。
  • 关闭防火墙: systemctl stop firewalld
  • 禁止开机自启: systemctl disable firewalld
  1. 修改系统最大进程数和最大文件打开数

    vim /etc/security/limits.conf修改以下内容:
    * soft nofile 65536
    * hard nofile 131072
    * soft nproc 2048
    * hard nproc 4096
    
  2. 修改进程数据限制

    vim /etc/security/limits.d/90-nproc.conf
    修改以下内容:
    * soft nproc 1024
    * soft nproc 2048
    

    查看优化信息

    ulimit -a
    

三、创建用户(所有节点)

  1. 登录 root 创建 mss 用户

    groupadd mss
    useradd -m -d /home/mss mss -g mss 
    passwd mss123456
    
  2. 创建目录
    登录 mss 用户

    # 创建安装目录
    mkdir /home/mss/dm8
    # 创建镜像目录
    mkdir /home/mss/dm8/iso
    

四、开始安装(所有节点)

  1. 上传镜像
    上传镜像文件(dm8_20230418_x86_rh6_64.iso)到 /home/mss/dm8 下

  2. 挂载镜像
    切换 root 用户

    mount /home/mss/dm8/dm8_20230418_x86_rh6_64.iso /home/mss/dm8/iso/
    # 查看是否挂载
    df -h
    

    授权 mss 用户目录权限

    chown -R mss:mss /home/mss
    
  3. 创建其它文件夹
    切换 mss 用户

    cd /home/mss/dm8
    mkdir install
    
  4. 执行安装

    cd /home/mss/dm8/iso
    ./DMInstall.bin -i
    

    在这里插入图片描述
    选择典型安装-1,安装路径 /home/mss/dm8/install
    安装完成提示:
    在这里插入图片描述

    数据库安装完成后,需要切换至 root 用户执行上图中的命令 root_installer.sh 创建 DmAPService,否则会影响数据库备份。

    su root
    cd  /home/mss/dm8/install/script/root
    ./root_installer.sh
    
  5. 创建实例

    切换 mss 用户
    注: 关于这些参数说明可进入安装目录的bin下,执行./dminit help
    case_sensitive :字符串比较大小写敏感,默认开启1(区分大小写),设置为 0 则不区分大小写

    在 node1 创建实例一:

    cd /home/mss/dm8/install/bin
    ./dminit path=/home/mss/dm8/data DB_NAME=DM01 INSTANCE_NAME=DBSERVER01 CASE_SENSITIVE=0  PORT_NUM=5236 SYSDBA_PWD=casic123456 SYSAUDITOR_PWD=casic123456 PAGE_SIZE=32 EXTENT_SIZE=32  CHARSET=1  LOG_SIZE=500
    

    在 node2 创建实例二:

    cd /home/mss/dm8/install/bin
    ./dminit path=/home/mss/dm8/data DB_NAME=DM01 INSTANCE_NAME=DBSERVER02 CASE_SENSITIVE=0  PORT_NUM=5236 SYSDBA_PWD=casic123456 SYSAUDITOR_PWD=casic123456 PAGE_SIZE=32 EXTENT_SIZE=32  CHARSET=1  LOG_SIZE=500
    

    在 node3 创建监视器:

    cd /home/mss/dm8/install/bin
    ./dminit path=/home/mss/dm8/data DB_NAME=DM01
    
  6. 配置实例参数
    切换 mss 用户

    配置 node1 实例一:------------------------------------------------------------------

    cd /home/mss/dm8/data/DM01
    

    (1)配置dm.ini

    INSTANCE_NAME =DBSERVER01
    PORT_NUM = 5236
    DW_INACTIVE_INTERVAL = 60
    #不允许手工方式修改实例模式/状态/OGUID
    ALTER_MODE_STATUS = 0
    #不允许备库 OFFLINE 表空间
    ENABLE_OFFLINE_TS = 2
    #打开 MAL 系统
    MAL_INI = 1
    #打开归档配置
    ARCH_INI = 1
    #统计最近 64 次的日志重演信息
    RLOG_SEND_APPLY_MON = 64
    

    (2)新建dmmal.ini

    #配置上端口规划中规划的各端口参数:
    #PORT_NUM、MAL_INST_DW_PORT、MAL_DW_PORT
    #[MAL_INST1]中填写主机的、
    #[MAL_INST2]中填写备机的MAL_CHECK_INTERVAL = 5
    MAL_CONN_FAIL_INTERVAL = 5[MAL_INST1]
    MAL_INST_NAME = DBSERVER01
    MAL_HOST = 192.168.162.221
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.221
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101[MAL_INST2]
    MAL_INST_NAME = DBSERVER02
    MAL_HOST = 192.168.162.222
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.222
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101
    

    (3)新建dmarch.ini

    [ARCHIVE_REALTIME]
    ARCH_TYPE = REALTIME
    ARCH_DEST =DBSERVER02[ARCHIVE_LOCAL1]
    ARCH_TYPE = LOCAL
    ARCH_DEST = /home/mss/dm8/data/DM01/arch
    ARCH_FILE_SIZE = 128
    ARCH_SPACE_LIMIT = 0
    

    (4)新建dmwatcher.ini

    [GRP1]
    DW_TYPE = GLOBAL
    DW_MODE = AUTO
    DW_ERROR_TIME = 10
    INST_RECOVER_TIME = 60
    INST_ERROR_TIME = 10
    INST_OGUID = 453331
    INST_INI = /home/mss/dm8/data/DM01/dm.ini
    INST_AUTO_RESTART = 1
    INST_STARTUP_CMD = /home/mss/dm8/install/bin/dmserver
    RLOG_SEND_THRESHOLD = 0
    RLOG_APPLY_THRESHOLD = 0
    

    配置 node2 实例二:------------------------------------------------------------------

    cd /home/mss/dm8/data/DM01
    

    (1)配置dm.ini

    INSTANCE_NAME = DBSERVER02
    PORT_NUM = 5236
    DW_INACTIVE_INTERVAL = 60
    ALTER_MODE_STATUS = 0
    ENABLE_OFFLINE_TS = 2
    MAL_INI = 1
    ARCH_INI = 1
    RLOG_SEND_APPLY_MON = 64
    

    (2)新建dmmal.ini

    #配置上端口规划中规划的各端口参数:
    #PORT_NUM、MAL_INST_DW_PORT、MAL_DW_PORT
    #[MAL_INST1]中填写主机的、
    #[MAL_INST2]中填写备机的MAL_CHECK_INTERVAL = 5
    MAL_CONN_FAIL_INTERVAL = 5[MAL_INST1]
    MAL_INST_NAME = DBSERVER01
    MAL_HOST = 192.168.162.221
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.221
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101[MAL_INST2]
    MAL_INST_NAME = DBSERVER02
    MAL_HOST = 192.168.162.222
    MAL_PORT = 55101
    MAL_INST_HOST = 192.168.162.222
    MAL_INST_PORT = 5236
    MAL_DW_PORT = 65101
    MAL_INST_DW_PORT = 45101
    

    (3)新建dmarch.ini

    [ARCHIVE_REALTIME]
    ARCH_TYPE = REALTIME
    ARCH_DEST =DBSERVER01[ARCHIVE_LOCAL1]
    ARCH_TYPE = LOCAL
    ARCH_DEST = /home/mss/dm8/data/DM01/arch
    ARCH_FILE_SIZE = 128
    ARCH_SPACE_LIMIT = 0
    

    (4)新建dmwatcher.ini

    [GRP1]
    DW_TYPE = GLOBAL
    DW_MODE = AUTO
    DW_ERROR_TIME = 10
    INST_RECOVER_TIME = 60
    INST_ERROR_TIME = 10
    INST_OGUID = 453331
    INST_INI = /home/mss/dm8/data/DM01/dm.ini
    INST_AUTO_RESTART = 1
    INST_STARTUP_CMD = /home/mss/dm8/install/bin/dmserver
    RLOG_SEND_THRESHOLD = 0
    RLOG_APPLY_THRESHOLD = 0
    

    配置 node3 监视器:------------------------------------------------------------------

    cd /home/mss/dm8/data/DM01
    

    (1)新建dmmonitor.ini

    # 0表示普通监视器 ,最多配置8个,1 确认监视器模式
    MON_DW_CONFIRM = 1
    MON_LOG_PATH = /home/mss/dm8/install/log
    # 每隔 60s 定时记录系统信息到日志文件
    MON_LOG_INTERVAL = 60
    # 每个日志文件最大 32M
    MON_LOG_FILE_SIZE = 32
    # 不限定日志文件总占用空间
    MON_LOG_SPACE_LIMIT = 0[GRP1]
    #组 GRP1 的唯一OGUID 值
    MON_INST_OGUID = 453331
    ##dmmal.ini####MAL_HOST:MAL_DW_PORT###################
    MON_DW_IP = 192.168.162.221:65101
    MON_DW_IP = 192.168.162.222:65101
    
  7. **备份主机数据库 node1 **
    登录 node1 服务器

    su mss
    cd /home/mss/dm8/install/bin/
    # 初始化
    ./dmserver /home/mss/dm8/data/DM01/dm.ini #如果dmap没启动执行以下命令
    ./dmap#执行备份
    ./dmrman CTLSTMT="BACKUP DATABASE '/home/mss/dm8/data/DM01/dm.ini' FULL TO fullbak01 BACKUPSET '/home/mss/dm8/backup/fullbak01'"
    拷贝221备份文件到222
    scp -r /home/mss/dm8/backup mss@192.168.162.222:/home/mss/dm8/
    
  8. **在备份机还原数据库 node2 **
    登录 node2 服务器

    su mss
    cd /home/mss/dm8/install/bin/#如果dmap没启动执行以下命令
    ./dmap./dmrman CTLSTMT="RESTORE DATABASE '/home/mss/dm8/data/DM01/dm.ini' FROM BACKUPSET '/home/mss/dm8/backup/fullbak01'"
    ./dmrman CTLSTMT="RECOVER DATABASE '/home/mss/dm8/data/DM01/dm.ini' FROM BACKUPSET '/home/mss/dm8/backup/fullbak01'"
    ./dmrman CTLSTMT="RECOVER DATABASE '/home/mss/dm8/data/DM01/dm.ini' UPDATE DB_MAGIC"```
    
  9. 主机与备机分别以mount方式启动数据库
    在 node1、node2 分别执行以下命令

    cd /home/mss/dm8/install/bin/
    #如果dmap没启动执行以下命令
    ./dmap
    ./dmserver /home/mss/dm8/data/DM01/dm.ini  mount./disql
    SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
    SQL> SP_SET_OGUID(453331);
    SQL> ALTER DATABASE PRIMARY;
    SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
    
  10. 启动测试服务
    (1) node1 221 机器:

    cd /home/mss/dm8/install/bin/
    ./dmserver /home/mss/dm8/data/DM01/dm.ini  mount
    ./dmwatcher /home/mss/dm8/data/DM01/dmwatcher.ini
    

    在这里插入图片描述
    (2) node1 222 机器:

    cd /home/mss/dm8/install/bin/
    ./dmserver /home/mss/dm8/data/DM01/dm.ini  mount
    ./dmwatcher /home/mss/dm8/data/DM01/dmwatcher.ini
    

    (3) node3 223 机器:

    cd /home/mss/dm8/install/bin/
    ./dmmonitor /home/mss/dm8/data/DM01/dmmonitor.ini
    

    在这里插入图片描述

五、服务注册启动

  1. 进行服务注册

    切换 root 用户
    (1)node1 221 机器 实例一

    su root
    cd  /home/mss/dm8/install/script/root
    ./dm_service_installer.sh -p DMSERVER -t dmserver -dm_ini /home/mss/dm8/data/DM01/dm.ini 
    ./dm_service_installer.sh -p dmwatcher -t dmwatcher -watcher_ini  /home/mss/dm8/data/DM01/dmwatcher.ini
    

    (2)node2 222 机器 实例二

    su root
    cd  /home/mss/dm8/install/script/root
    ./dm_service_installer.sh -p DMSERVER -t dmserver -dm_ini /home/mss/dm8/data/DM01/dm.ini 
    ./dm_service_installer.sh -p dmwatcher -t dmwatcher -watcher_ini  /home/mss/dm8/data/DM01/dmwatcher.ini
    

    (3)node3 223 机器 监测

    su root
    cd  /home/mss/dm8/install/script/root
    ./dm_service_installer.sh -p dmmonitor  -t dmmonitor -monitor_ini   /home/mss/dm8/data/DM01/dmmonitor.ini
    
    //注释: 此命令为删除服务:./dm_service_uninstaller.sh -n DmServiceDMSERVER
    
  2. 启停数据库命令
    (1)node1 221 机器 实例一

    systemctl start DmServiceDMSERVER.service
    systemctl stop DmServiceDMSERVER.service
    systemctl restart DmServiceDMSERVER.service
    systemctl status DmServiceDMSERVER.service
    

    (2)node2 222 机器 实例二

    systemctl start DmServiceDMSERVER.service
    systemctl stop DmServiceDMSERVER.service
    systemctl restart DmServiceDMSERVER.service
    systemctl status DmServiceDMSERVER.service
    

    (3)node3 223 机器 监视器

    systemctl status DmMonitorServicedmmonitor.service
    systemctl start DmMonitorServicedmmonitor.service
    
  3. 连接数据库
    账户:SYSDBA
    密码:SYSDBA

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

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

相关文章

风丘科技将亮相 EVM ASIA 2023

风丘科技将首次亮相 EVM ASIA 2023 WINDHILL will debut EVM ASIA 2023 ——可持续移动的未来 —The Future of SUSTAINABLE Mobility EVM ASIA 2023是亚太地区电气化的国际性展会,专注于新能源汽车、充电技术及汽车零件制造等。展会致力于促进包括充电站、交通…

[系统安全] 五十二.DataCon竞赛 (1)2020年Coremail钓鱼邮件识别及分类详解

您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列。因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全、逆向分析和恶意代码检测,“系统安全”系列文章会更加聚焦,更加系…

InnoDB文件物理结构解析5 - FIL_PAGE_INDEX

本文讨论FIL_PAGE_INDEX页的可回收垃圾记录(Garbage/Deleted Records),当我们删除某一条记录(delete from …)时,通常InnoDB并不会在物理存储上进行完全删除,而是在记录上置一个删除标志位,我们称这些行记录为垃圾记录&#xff0c…

嵌入式Qt开发—Excel表格数据导出

有一个嵌入式Excel表格数据导出的需求:应用软件运行于嵌入式Linux平台上,在设备运行过程中,存储了许多数据,这些数据想以表格的形式导出。考虑到Windows平台的普遍性,需要将数据以excel表格形式导出,故选择…

python库打包

一、背景 想让自己写的python库可以使用pip install xxx安装。 二、环境准备 注册PYPI账号已经写好的能正常使用的库/方法/项目(可以本地调用)安装依赖库setuptools和twinw pip install setuptools pip install twine # 简化将库发布到PYPI流程的工…

“中国软件杯”飞桨赛道晋级决赛现场名单公布

“中国软件杯”大学生软件设计大赛是由国家工业和信息化部、教育部、江苏省人民政府共同主办,是全国软件行业规格最高、最具影响力的国家级一类赛事,为《全国普通高校竞赛排行榜》榜单内赛事。今年,组委会联合百度飞桨共同设立了“智能系统设…

C++11之后的C++标准特性宏定义方便功能特性测试

C是一个庞大的编程语言体系,它的高效性是可以直接连接硬件系统,它的灵活性是不断迭代完善的通用语义机制,当下C的发展演进可谓一路狂奔。不同应用中需要知道C对应的平台或者版本的功能特性,标准库信息、C编译器特性等,…

基于PHP的轻量级博客typecho

本文完成于 5 月中旬,发布时未在最新版本上验证; 什么是 typecho ? Typecho 是一款基于 PHP 的博客软件,旨在成为世界上最强大的博客引擎。Typecho 在 GNU 通用公共许可证 2.0 下发布。支持多种数据库,原生支持 Markdo…

24届近5年南京大学自动化考研院校分析

今天给大家带来的是南京大学控制考研分析 满满干货~还不快快点赞收藏 一、南京大学 学校简介 南京大学是一所历史悠久、声誉卓著的高等学府。其前身是创建于1902年的三江师范学堂,此后历经两江师范学堂、南京高等师范学校、国立东南大学、国立第四中…

JS 删除的是最后一页的最后一条,页码设置逻辑

删除的场景: 解决思路: 1、计算操作后的总页数 2、删除成功之后的总页数与当前总页数进行比较 3、如果删除成功之后的总页数比小于当前总页数,需要把当前页码减去1;否则,直接进行列表数据的请求 代码实现 /*总条数…

VBA 学习笔记1 对象以及属性

目录 1 取得VBA对象1.1 取得工作簿对象1.2 取得工作表对象1.3 取得单元格对象1.4 取得对象的属性1.5 文档的方法1 进入vba 界面 方式之一: 快捷键:ALTERF11 运行方式之一: 进入vba界面,点击绿色三角符号 1 取得VBA对象 1.1 取得…

DAY21

题目一 给定三个字符串str1、str2和aim, 如果aim包含且仅包含来自str1和str2的所有字符,而且在aim中属于str1的字符 之间保持原来在str1中的顺序,属于str2的字符之间保持原来在str2中的顺序,那么称aim是str1和str2的交错组成。实…

Springboot-Retrofit HTTP工具框架快速使用

在SpringBoot项目直接使用okhttp、httpClient或者RestTemplate发起HTTP请求,既繁琐又不方便统一管理。 因此,在这里推荐一个适用于SpringBoot项目的轻量级HTTP客户端框架retrofit-spring-boot-starter,使用非常简单方便,同时又提供…

约数个数(质因子分解)

思路: (1)由数论基本定理,任何一个正整数x都能写作,其中p1,p2..pk为x的质因子。 (2)由此可以推断,要求一个数约数的个数,注意到约数就是p1,p2...pk的一种组合&#xff…

日常BUG—— SpringBoot项目DEBUG模式启动慢、卡死。

😜作 者:是江迪呀✒️本文关键词:日常BUG、BUG、问题分析☀️每日 一言 :存在错误说明你在进步! 一、问题描述 我们调试程序时,需要使用DEBUG模式启动SpringBoot项目, 有时候会发…

convert Auto-Login (cwallet.sso) Wallet into a PKCS12 compliant Wallet

一步不行吗 &#xff1f; 1. If $JAVA_HOME is not set: a)For FMW 11g components associated with a WebLogic Domain or a FMW 12c Collocated OHS install run: $MIDDLEWARE_HOME/user_projects/domains/<domain>/bin/setDomainEnv.sh b) For FMW 11g Standalone…

侧滑置顶,取消置顶

第一步:布局 <?xml version"1.0" encoding"utf-8"?> <com.ddmh.magic.camera.ui.widget.SwipeMenuLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto"…

SQL | 使用通配符进行过滤

6-使用通配符进行过滤 6.1-LIKE操作符 前面介绍的所有操作符都是通过已知的值进行过滤&#xff0c;或者检查某个范围的值。但是如果我们想要查找产品名字中含有bag的数据&#xff0c;就不能使用前面那种过滤情况。 利用通配符&#xff0c;可以创建比较特定数据的搜索模式。 …

selenium 爬虫

selenium 可以动态爬取网页数据&#xff0c;就像真实用户操作浏览器一样&#xff0c;从终端用户的角度测试应用程序&#xff0c;WebDriver通过原生浏览器支持或者浏览器扩展直接控制浏览器 webdriver下载 因为selenuim对浏览器的版本存在兼容问题&#xff0c;顾需要针对指定浏…

SAP系统是什么呢?它有哪些优势?

SAP系统是全球知名的企业资源规划&#xff08;ERP&#xff09;解决方案供应商。它集成了财务、供应链管理、人力资源管理、销售和客户关系管理等多个功能模块&#xff0c;为企业提供全面、集成的管理体验。SAP系统已成为各行各业企业管理的智慧选择&#xff0c;极大地提升了管理…