当前位置:网站首页 > 数据科学与大数据 > 正文

达梦数据库集群部署方式(达梦数据库模式是什么)



本示例中数据守护进程组名为"GRP1" ,配置为实时主备,主库实例名为"NODE1" ,备库实例名为"NODE2"。

集群配置环境说明:

如果服务器上面有多个网卡,服务ip和心跳ip可以使用不同的网卡ip,这里只有一个网卡,就是使用相同的ip进行测试使用。

主备角色

服务ip

心跳ip(MAL_HOST)

实例名

实例端口

主库

192.168.58.30

192.168.58.30

NODE1

5236

备库

192.168.58.31

192.168.58.31

NODE2

5236

监视器

192.168.58.32

端口规划:

实例名

PORT_NUM

MAL_INST_DW_ PORT

MAL_HOST

MAL_PORT

MAL_DW_ PORT

NODE1

5236

5237

192.168.58.30

5238

5239

NODE2

5236

5237

192.168.58.31

5238

5239

端口说明:

  • PORT_NUM:数据库实例监听端口。
  • MAL_INST_DW_ PORT:实例对守护进程的监听端口,守护进程使用 MAL_HOST + MAL_INST_DW_PORT 创建到实例的 TCP连接。
  • MAL_PORT:MAL系统监听TCP连接的端口。
  • MAL_DW_ PORT:守护进程监听端口,其他守护进程或监视器使用 MAL_HOST + MAL_DW_ PORT创建 TCP 连 接。监视器配置文件 dmmonitor.ini 中,MON_DW_ IP 就是一组 MAL_HOST: MAL_DW_PORT。

MAL系统是基于 TCP 协议实现的一种内部通信机制,DM通过 MAL系统实现 Redo日志传输, 以及其他一 些实例间的消息通讯。

守护进程 (dmwatcher ) 是数据库实例和监视器之间信息流转的桥梁。数据库实例向本地守护进程发送信息, 接收本地守护进程的消息和命令;

监视器 (dmmonitor) 接收守护进程的消息,并向守护进程发送命令;数据库实例与监视器之间没有直接的消 息交互;

守护进程解析并执行监视器发起的各种命令 (Switchover/Takeover/Open force 等) ,并在必要时通知数据库实例执行相应的操作

详情请参考官方文档:https://eco.dameng.com/document/dm/zh-cn/ops/before-installation.html

1、创建达梦数据库对应的用户和组

注意:安装前必须创建 dmdba 用户,禁止使用 root 用户安装数据库。

 
  

2、创建达梦数据库安装目录

 
  

3、调整系统资源限制

查看dmdba用户的系统资源情况:

 
  

官方建议:

root用户下配置资源限制,在/etc/security/limits.conf文件中追加下面的内容:

 
  

配置完成之后,到dmdba用户下查看资源限制

 
  

选择好自己的cpu平台和操作系统版本,开放版这里没有银河麒麟v10,选择redhat7代替

root用户操作:

 
  

挂载iso镜像:

 
  

注意:如果/tmp 目录不能保证 2GB 的存储空间,在安装达梦数据库的时候会报错,用户可以扩展/tmp 目录存储空间或者通过设置环境变量 DM_INSTALL_TMPDIR 指定安装程序的临时目录。具体操作如下所示:

1、切换到dmdba用户下:su - dmdba

2、在环境变量文件中追加配置:vim ~/.bash_profile

追加内容为:export DM_INSTALL_TMPDIR=/dm8/dmtmp

(/dm8/dmtmp这个目录确保有2g的空间,并且dmdba用户有权限操作该目录)

3、加载环境变量,让它生效:source ~/.bash_profile

 
  

根据实际情况去配置:

根据上面执行结果的要求,新开一个窗口登录root用户执行上述root_installer.sh脚本注册数据库服务:

 
  

到这里,dm8软件就安装完成了

 
  

按实际需要初始化实例:

本例只指定数据库存放路径、DB_NAME、INSTANCE_NAME,页大小为32k,其它参数使用默认值。

 
  
 
  
 
  
 
  
 
  
 
  
 
  
 
  

集群中所有节点dmmal.ini文件内容必须一致。

 
  
 
  
 
  

主库配置就行,备库不需要配置

 
  
 
  
 
  

配置监视器,一般选择主备库以外的其他机器,安装了达梦服务端的即可),其中 MON_DW_IP中的IP和PORT和dmmal.ini中的MAL_HOST和MAL_DW_PORT配置项保持一致。

 
  

注意:

一定要以 Mount 方式启动数据库实例,否则系统启动时会重构回滚表空间, 生成 Redo 日志;并且,启动后应用可能连接到数据库实例进行操作,破坏主备库的数据一致性。数据守护配置结束后,守护进程会自动 Open 数据库。

 
  
 
  
 
  
 
  

启动数据守护进程:

 
  

查看数据库状态:先执行完下面备库的守护进程启动命令再查看

 
  

启动数据守护进程:

 
  

查看数据库状态:

 
  

启动监视器:查看主备集群运行情况:

 
  

异步备机数据并不是实时同步(定时器配置文件 dmtimer.ini ),可以配置2-3分钟触发。如果间隔时间比较长,那么我们在主库操作时,可以通过监视器,手动指定异步备库重演到当前时间,这样备库就可以查到数据了。

 
  
 
  
 
  

如果上面的操作都没有什么问题,主备集群状态都正常,按照顺序关闭监视器、备库数据守护进程、主库数据守护进程、主库实例、备库实例。

注册数据守护进程服务:

需要root用户登录注册服务:

 
  

注册数据守护进程服务:

将守护进程注册为服务(数据库会由数据守护自动拉起),需要root用户登录注册服务:

 
  

将确认监视器注册为服务:

root用户登录注册服务。

 
  

创建非确认监视器用于管理:

 
  
 
  
 
  
 
  
 
  
 
  
 
  

启动确认监视器:

 
  

启动非确认监视器查看主备运行情况:

 
  

dm_svc.conf配置文件,Windows平台下位于%SystemRoot%system32目录中,Linux平台下位于/etc目录。

参数说明:

  • LOGIN_MODE:指定优先登录的服务器模式。0:优先连接 Primary 模式的库,Normal 模式次之, 最后选择 Stantby 模式;1:只连接主库;2:只连接备库;3:优先连接 Standby 模式的库,Primary 模式次之,最后选择Normal模式;4:优先连接Normal模式的库,Primary 模式次之,最后选择 Standby 模式。默认值为 4。
  • SWITCH_TIME:检测到数据库实例故障时,接口在服务器之间切换的次数;超过设置次数没有连接到有效数据库时,断开连接并报错。有效值范围 1~,默认值为 3。
  • SWITCH_INTERVAL:表示在服务器之间切换的时间间隔 ,单位为毫秒,默认值为 200,有效值范围是1~。
 
  

测试:

 
  
 
  

测试:

 
  

 大家想学习达梦数据库或者解决报错问题,可以去达梦数据库社区地址(https://eco.dameng.com)

制作不易,各位看官如果觉得还可以,对您有帮助,请给小弟一键三连鼓励一下,后续还会继续保持 

到此这篇达梦数据库集群部署方式(达梦数据库模式是什么)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 无人车驾驶数据标注员(无人车数据标注师)2025-07-15 23:54:08
  • 数据库端口号怎么修改(数据库端口号怎么修改不了)2025-07-15 23:54:08
  • 数据库的端口是用来干什么的(数据库端口有什么用)2025-07-15 23:54:08
  • 大数据技术主要学什么就业方向(大数据技术的就业前景和就业方向)2025-07-15 23:54:08
  • 大数据学习(大数据学习路线)2025-07-15 23:54:08
  • 数据库课程(数据库课程设计案例)2025-07-15 23:54:08
  • tcpdump查看pcap文件(tcpdump查看数据包)2025-07-15 23:54:08
  • 大数据课程岗前培访(大数据岗前培训)2025-07-15 23:54:08
  • 数据库基础知识面试(数据库基础知识面试真题)2025-07-15 23:54:08
  • 大数据学习(大数据课程)2025-07-15 23:54:08
  • 全屏图片