概述
DM8两节点MPP部署
MPP集群:
MPP (Massively Parallel Processing),大规模并行处理系统,这样的系统是由许多松耦合的处理单元组成的,要注意的是这里指的是处理单元而不是处理器。每个单元内的CPU都有自己私有的资源,如总线,内存,硬盘等。在每个单元内都有操作系统和管理数据库的实例复本。这种结构最大的特点在于不共享资源。
通常情况下,MPP系统因为要在不同处理单元之间传送信息,所以它的效率要比SMP要差一点,但是这也不是绝对的,因为MPP系统不共享资源,因此对它而言,资源比SMP要多,当需要处理的事务达到一定规模时,MPP的效率要比SMP好。
MPP 主备
就是在 MPP 集群的基础上,为每一个 MPP 节点配置一套实时主备系统,这些 实时主备系统一起构成了 MPP 主备系统。MPP 主备系统包含多个守护进程组,每个守护进 程组都是一个相对独立的实时主备系统,具备实时主备的基本功能,可以进行主备切换、备 库接管等操作。
MPP 主备的主要目的
是为 DM MPP 集群提供数据可靠性保障,备库只做数据容灾、备 份,MPP 备库并不是 MPP 集群的一部分,只是某个 MPP 节点(主库)的镜像。MPP 备库不 参与 MPP 操作,与其他 MPP 备库之间也没有任何关系,MPP 备库只能以单节点方式提供只 读服务,但不提供全局的 MPP 只读服务。
MPP 主备系统中,一个守护进程 dmwatcher 可以监控、管理多个守护进程组的数据库 实例。一般来说,一台物理机器上,可以部署 1 个 MPP 节点的主库和多个其他 MPP 节点的 备库,充分利用硬件资源,节省投资。
- 部署前准备
集群规划
A机器 | B机器 | |||
业务IP | 192.168.163.166 | 192.168.163.167 | ||
心跳IP | 192.168.157.129 | 192.168.163.180 | ||
实例名 | MPP1_01 | MPP1_02B | MPP1_02 | MPP1_01B |
实例端口 | 5236 | 5237 | 5236 | 5237 |
MAL端口 | 5336 | 5337 | 5336 | 5337 |
MAL守护进程端口 | 5436 | 5437 | 5436 | 5437 |
守护进程端口 | 5536 | 5537 | 5536 | 5537 |
OGUID | 45331 | 45332 | 45332 | 45331 |
守护组 | GMPP1_01 | GMPP1_02 | GMPP1_02 | GMPP1_01 |
安装目录 | /home/data/dmdbms | |||
实例目录 | /data/ | |||
归档上限 | 51200 | |||
确认监视器IP | 192.168.163.167 |
说明:具体规划及部署方式以现场环境为准。
-
集群架构
-
硬件环境建议
心跳网络方面:①集群间的心跳网络要走数据,最好走两个交换机,来实现冗余和负载均衡。②需要把服务器多个心跳网卡绑定为一个逻辑网卡来使用(比如bond方式)。③交换机速度建议至少为千兆。
存储方面:①需要在每台机器上挂在独立存储,其中主机所在机器挂载的存储建议大一些。②需要格式化好,且所有机器挂载路径保持一致。③在空间不够用时,要求支持在挂载目录上直接进行扩充。④文件系统建议使用ext4。
-
硬件环境环境验证
心跳网络方面:①关闭其中一台交换机或者模拟其中一条线路故障,是否能做到网络方面的冗余。②测试心跳网络的稳定性,会不会出现断连或者丢包等情况。
存储方面:反复重启集群机器,检查存储是否会出现只读、脱挂、挂载路径是否会发生改变等情况。
配置A机器-MPP1_01库
实例、备份数据
--初始化实例
./dminit PATH=/opt/dmdbms/data/ DB_NAME=MPP1_01 INSTANCE_NAME=MPP1_01 PORT_NUM=5236 PAGE_SIZE=32 LOG_SIZE=2048
--启动服务
./dmserver /home/dmdba/dmdbms/data/MPP1_01/dm.ini
--开启归档
直接在dm.ini 中改动
--备份数据
SQL> BACKUP DATABASE BACKUPSET '/data/MPP1_01/bak/BACKUP_FILE';
--修改dm.ini
SQL> SP_SET_PARA_VALUE (2,'PORT_NUM',5236);
SQL> SP_SET_PARA_VALUE (2,'DW_INACTIVE_INTERVAL',60);
SQL> SP_SET_PARA_VALUE (2,'ALTER_MODE_STATUS',0);
SQL> SP_SET_PARA_VALUE (2,'ENABLE_OFFLINE_TS',2);
SQL> SP_SET_PARA_VALUE (2,'MAL_INI',1);
SQL> SP_SET_PARA_VALUE (2,'MPP_INI',1);
SQL> SP_SET_PARA_VALUE (2,'RLOG_SEND_APPLY_MON',64);
关闭前台实例服务
-
替换dmarch.ini
Vim dmarch.ini
[ARCHIVE_LOCAL]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /data/MPP1_01/arch/ #本地归档存放路径
ARCH_FILE_SIZE = 1024 #单个归档大小,单位MB
ARCH_SPACE_LIMIT = 51200 #归档上限,单位MB
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = MPP1_01B #实时归档目标实例名
-
创建dmmal.ini
MAL_CHECK_INTERVAL = 10 #MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 10 #判定MAL链路断开的时间
MAL_TEMP_PATH = /data/malpath/MPP1_01/ #临时文
件目录
MAL_BUF_SIZE = 512 #单个MAL缓存大小,单位MB
MAL_SYS_BUF_SIZE = 2048 #MAL总大小限制,单位MB
MAL_COMPRESS_LEVEL = 0 #MAL消息压缩等级,0表示不压>缩
[MAL_INST1]
MAL_INST_NAME = MPP1_01 #实例名,和 dm.ini中INSTANCE_NAME一致
MAL_HOST = 192.168.163.166 #MAL系统监听TCP连接的IP地址
MAL_PORT = 5336 #MAL系统监听TCP连接的端口
MAL_INST_HOST = 192.168.157.129 #实例的对外服>务IP地址
MAL_INST_PORT = 5236 #实例对外服务端口,和dm.ini中PORT_NUM一致
MAL_DW_PORT = 5436 #实例对应的守护进程监听TCP连接的端口
MAL_INST_DW_PORT = 5536 #实例监听守护进程TCP连接>的端口
[MAL_INST2]
MAL_INST_NAME = MPP1_01B
MAL_HOST = 192.168.163.167
MAL_PORT = 5337
MAL_INST_HOST = 192.168.163.180
MAL_INST_PORT = 5237
MAL_DW_PORT = 5437
MAL_INST_DW_PORT = 5537
[MAL_INST3]
MAL_INST_NAME = MPP1_02
MAL_HOST = 192.168.163.167
MAL_PORT = 5336
MAL_INST_HOST = 192.168.163.180
MAL_INST_PORT = 5236
MAL_DW_PORT = 5436
MAL_INST_DW_PORT = 5536
[MAL_INST4]
MAL_INST_NAME = MPP1_02B
MAL_HOST = 192.168.163.166
MAL_PORT = 5337
MAL_INST_HOST = 192.168.157.129
MAL_INST_PORT = 5237
MAL_DW_PORT = 5437
MAL_INST_DW_PORT = 5537
-
创建dmmpp.ini
Vim dmmpp.ini
[service_name1]
mpp_seq_no = 0
mpp_inst_name = MPP1_01
[service_name2]
mpp_seq_no = 1
mpp_inst_name = MPP1_02
-
创建dmmpp.ctl
/home/dmdba/dmdbms/bin/dmctlcvt t2c /data/MPP1_01/dmmpp.ini /data/MPP1_01/dmmpp.ctl
-
创建dmwatcher.ini
Vim dmwatcher.ini
[GMPP1_01]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = MANUAL #故障手动切换模式
DW_ERROR_TIME = 20 #远程守护进程故障认定时间
INST_ERROR_TIME = 20 #本地实例故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_OGUID = 45331 #守护系统唯一OGUID值
INST_INI =/data/MPP1_01/dm.ini #dm.ini文件路径
INST_AUTO_RESTART = 1 #打开实例的自动启动功能
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver #命令行方式启动
RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阈值,默认关闭
RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阈值,默认关闭
[GMPP1_02]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 20
-
拷贝实例
--拷贝实例到B机器
scp -r /opt/dmdbms/data/MPP1_01 dmdba@192.168.163.167:/opt/dmdbms/data/
-
注册服务
./dm_service_installer.sh -t dmserver -p MPP1_01 -dm_ini /data/MPP1_01/dm.ini -m mount
./dm_service_installer.sh -t dmwatcher -p MPP1_01 -watcher_ini /data/MPP1_01/dmwatcher.ini
备注:删除自启
./dm_service_uninstaller.sh -n DmServiceMPP1_01
./dm_service_uninstaller.sh -n DmWatcherServiceMPP1_01
配置B机器-MPP1_02库
实例、备份数据
--初始化实例
/home/dmdba/dmdbms/bin/dminit PATH=/data/ DB_NAME=MPP1_02 INSTANCE_NAME=MPP1_02 PORT_NUM=5236 PAGE_SIZE=32 LOG_SIZE=2048
--启动服务
./dmserver /data/MPP1_02/dm.ini
--开启归档
/home/dmdba/dmdbms/bin/disql SYSDBA/SYSDBA
SQL> ALTER DATABASE MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=/data/MPP1_02/arch, TYPE=LOCAL, FILE_SIZE=1024, SPACE_LIMIT=51200';
SQL> ALTER DATABASE OPEN;
--备份数据
SQL> BACKUP DATABASE BACKUPSET '/data/MPP1_02/bak/BACKUP_FILE';
--修改dm.ini
SQL> SP_SET_PARA_VALUE (2,'PORT_NUM',5236);
SQL> SP_SET_PARA_VALUE (2,'DW_INACTIVE_INTERVAL',60);
SQL> SP_SET_PARA_VALUE (2,'ALTER_MODE_STATUS',0);
SQL> SP_SET_PARA_VALUE (2,'ENABLE_OFFLINE_TS',2);
SQL> SP_SET_PARA_VALUE (2,'MAL_INI',1);
SQL> SP_SET_PARA_VALUE (2,'MPP_INI',1);
SQL> SP_SET_PARA_VALUE (2,'RLOG_SEND_APPLY_MON',64);
关闭前台实例服务
-
替换dmarch.ini
vim /data/MPP1_02/dmarch.ini
[ARCHIVE_LOCAL]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /data/MPP1_02/arch/ #本地归档存放路径
ARCH_FILE_SIZE = 1024 #单个归档大小,单位MB
ARCH_SPACE_LIMIT = 51200 #归档上限,单位MB
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = MPP1_02B #实时归档目标实例名
-
创建dmmal.ini
MAL_CHECK_INTERVAL = 10 #MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 10 #判定MAL链路断开的时间
MAL_TEMP_PATH = /data/malpath/MPP1_02/ #临时文
件目录
MAL_BUF_SIZE = 512 #单个MAL缓存大小,单位MB
MAL_SYS_BUF_SIZE = 2048 #MAL总大小限制,单位MB
MAL_COMPRESS_LEVEL = 0 #MAL消息压缩等级,0表示不压>缩
[MAL_INST1]
MAL_INST_NAME = MPP1_01 #实例名,和 dm.ini中INSTANCE_NAME一致
MAL_HOST = 192.168.163.166 #MAL系统监听TCP连接的IP地址
MAL_PORT = 5336 #MAL系统监听TCP连接的端口
MAL_INST_HOST = 192.168.157.129 #实例的对外服>务IP地址
MAL_INST_PORT = 5236 #实例对外服务端口,和dm.ini中PORT_NUM一致
MAL_DW_PORT = 5436 #实例对应的守护进程监听TCP连接的端口
MAL_INST_DW_PORT = 5536 #实例监听守护进程TCP连接>的端口
[MAL_INST2]
MAL_INST_NAME = MPP1_01B
MAL_HOST = 192.168.163.167
MAL_PORT = 5337
MAL_INST_HOST = 192.168.163.180
MAL_INST_PORT = 5237
MAL_DW_PORT = 5437
MAL_INST_DW_PORT = 5537
[MAL_INST3]
MAL_INST_NAME = MPP1_02
MAL_HOST = 192.168.163.167
MAL_PORT = 5336
MAL_INST_HOST = 192.168.163.180
MAL_INST_PORT = 5236
MAL_DW_PORT = 5436
MAL_INST_DW_PORT = 5536
[MAL_INST4]
MAL_INST_NAME = MPP1_02B
MAL_HOST = 192.168.163.166
MAL_PORT = 5337
MAL_INST_HOST = 192.168.157.129
MAL_INST_PORT = 5237
MAL_DW_PORT = 5437
MAL_INST_DW_PORT = 5537
-
- 创建dmmpp.ini
vim /home/dmdba/dmdbms/data/MPP1_02/dmmpp.ini
[service_name1]
mpp_seq_no = 0
mpp_inst_name = MPP1_01
[service_name2]
mpp_seq_no = 1
mpp_inst_name = MPP1_02
-
- 创建dmmpp.ctl
/home/dmdba/dmdbms/bin/dmctlcvt t2c /data/MPP1_02/dmmpp.ini /data/MPP1_02/dmmpp.ctl
-
- 创建dmwatcher.ini
vim /home/dmdba/dmdbms/data/MPP1_02/dmwatcher.ini
[GMPP1_01]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = MANUAL #故障手动切换模式
DW_ERROR_TIME = 20 #远程守护进程故障认定时间
INST_ERROR_TIME = 20 #本地实例故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_OGUID = 45331 #守护系统唯一OGUID值
INST_INI = data/MPP1_01/dm.ini #dm.ini文件路径
INST_AUTO_RESTART = 1 #打开实例的自动启动功能
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver #命令行方式启动
RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阈值,默认关闭
RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阈值,默认关闭
[GMPP1_02]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 20
INST_ERROR_TIME = 20
INST_RECOVER_TIME = 60
INST_OGUID = 45332
INST_INI = /data/MPP1_02/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0
-
拷贝实例
--拷贝实例到A机器
scp -r /opt/dmdbms/data/MPP1_02 dmdba@192.168.163.166: /data
-
注册服务
./dm_service_installer.sh -t dmserver -p MPP1_02 -dm_ini /data/MPP1_02/dm.ini -m mount
./dm_service_installer.sh -t dmwatcher -p MPP1_02 -watcher_ini /data/MPP1_02/dmwatcher.ini
备注:删除自启
./dm_service_uninstaller.sh -n DmServiceMPP1_02
./dm_service_uninstaller.sh -n DmWatcherServiceMPP1_02
配置B机器-MPP1_01B库
修改dm.ini
Vim /data/MPP1_01/dm.ini
INSTANCE_NAME = MPP1_01B #数据库实例名
PORT_NUM = 5237 #数据库实例监听端口
-
替换dmarch.ini
Vim /data/MPP1_01/dmarch.ini
[ARCHIVE_LOCAL]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /data/MPP1_01/arch/ #本地归档存放路径
ARCH_FILE_SIZE = 1024 #单个归档大小,单位MB
ARCH_SPACE_LIMIT = 51200 #归档上限,单位MB
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = MPP1_01 #实时归档目标实例名
-
相同配置项
与A机器MPP1_01的dmmal.ini、dmmpp.ini、dmmpp.ctl相同
-
注册服务
./dm_service_installer.sh -t dmserver -p MPP1_01B -dm_ini /data/MPP1_01/dm.ini -m mount
备注:删除自启
./dm_service_uninstaller.sh -n DmServiceMPP1_01B
-
恢复数据
./dmrman
CTLSTMT="RESTORE DATABASE '/data/MPP1_01/dm.ini' FROM BACKUPSET '/data/MPP1_01/bak/BACKUP_FILE'"
CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/MPP1_01/dm.ini' FROM BACKUPSET '/opt/dmdbms/data/MPP1_01/bak/BACKUP_FILE'"
CTLSTMT="RECOVER DATABASE '/opt/dmdbms/data/MPP1_01/dm.ini' UPDATE DB_MAGIC"
配置A机器-MPP1_02B库
修改dm.ini
Vim /data/MPP1_02/dm.ini
INSTANCE_NAME = MPP1_02B #数据库实例名
PORT_NUM = 5237 #数据库实例监听端口
-
替换dmarch.ini
Vim /data/MPP1_02/dmarch.ini
[ARCHIVE_LOCAL]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /data/MPP1_02/arch/ #本地归档存放路径
ARCH_FILE_SIZE = 1024 #单个归档大小,单位MB
ARCH_SPACE_LIMIT = 51200 #归档上限,单位MB
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = MPP1_02 #实时归档目标实例名
-
配置相同项
与B机器MPP1_02的dmmal.ini、dmmpp.ini、dmmpp.ctl相同
-
注册服务
./dm_service_installer.sh -t dmserver -p MPP1_02B -dm_ini /data/MPP1_02/dm.ini -m mount
备注:删除自启
./dm_service_uninstaller.sh -n DmServiceMPP1_02B
-
恢复数据
./dmrman
CTLSTMT="RESTORE DATABASE '/data/MPP1_02/dm.ini' FROM BACKUPSET '/data/MPP1_02/bak/BACKUP_FILE'"
CTLSTMT="RECOVER DATABASE '/data/MPP1_02/dm.ini' FROM BACKUPSET ' /data/MPP1_02/bak/BACKUP_FILE'"
CTLSTMT="RECOVER DATABASE ' /data/MPP1_02/dm.ini' UPDATE DB_MAGIC"
配置监视器
1、在各节点数据库的bin目录中 存放非确认监视器配置文件。
2、在确认监视器机器上(非集群节点) 注册确认监视器自启服务。
-
- 创建dmmonitor.ini
Vim /dmmonitor.ini
MON_DW_CONFIRM = 0 #0为非确认,1为确认
MON_LOG_PATH = /data/log #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 512 #单个日志大小,单位MB
MON_LOG_SPACE_LIMIT = 2048 #日志上限,单位MB
[GMPP1_01]
MON_INST_OGUID = 45331 #组GMPP1_01的唯一OGUID 值
MON_DW_IP = 192.168.1.1:5436 #IP对应MAL_HOST,PORT对应MAL_DW_PORT
MON_DW_IP = 192.168.1.2:5437
[GMPP1_02]
MON_INST_OGUID = 45332 #组GMPP1_02的唯一OGUID 值
MON_DW_IP = 192.168.1.2:5436
MON_DW_IP = 192.168.1.1:5437
-
注册服务
./dm_service_installer.sh -t dmmonitor -p Monitor -monitor_ini /home/dmdba/dmdbms/bin/dmmonitor.ini
备注:删除自启
./dm_service_uninstaller.sh -n DmMonitorServiceMonitor
-
监视器使用
命令 | 含义 |
list | 查看守护进程的配置信息 |
show mpp | 查看MPP节点信息 |
tip | 查看系统当前运行状态 |
login | 登录监视器 |
logout | 退出登录 |
choose switchover 守护组 | 主机正常:查看可切换为主机的实例列表 |
switchover 守护组.实例名 | 主机正常:使用指定组的指定实例,切换为主机 |
choose takeover 守护组 | 主机故障:查看可切换为主机的实例列表 |
takeover 守护组.实例名 | 主机故障:使用指定组的指定实例,切换为主机 |
choose takeover force 守护组 | 强制切换:查看可切换为主机的实例列表 |
takeover force 守护组.实例名 | 强制切换:使用指定组的指定实例,切换为主机 |
startup dmwatcher all | 启动所有组的守护进程监控功能 |
stop dmwatcher all | 关闭所有组的守护进程监控功能 |
startup instance all | 启动所有组的实例 |
stop instance all | 关闭所有组的实例 |
主机故障后,在备机执行SELECT SF_DW_CHECK_TAKEOVER();【1:可接管 0:不可接管】 |
启动服务及查看信息
启动数据库并修改参数
- A机器-MPP1_01
./DmServiceMPP1_01 start
./disql SYSDBA/SYSDBA@172.16.1.1:5236
SQL> SP_SET_OGUID(45331);
SQL> ALTER DATABASE PRIMARY;
- B机器-MPP1_02
./DmServiceMPP1_02 start
./disql SYSDBA/SYSDBA
SQL> SP_SET_OGUID(45332);
SQL> ALTER DATABASE PRIMARY;
- A机器-MPP1_02B
./DmServiceMPP1_02B start
./disql SYSDBA/SYSDBA
SQL> SP_SET_OGUID(45332);
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> ALTER DATABASE STANDBY;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
- B机器-MPP1_01B
./DmServiceMPP1_01B start
./disql SYSDBA/SYSDBA
SQL> SP_SET_OGUID(45331);
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL> ALTER DATABASE STANDBY;
SQL> SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
-
启动守护进程
A机器:./DmWatcherServiceMPP1_01 start
B机器:./DmWatcherServiceMPP1_02 start
-
启动监视器
./DmMonitorServiceMonitor start
前台启动:./dmmonitor /home/dmdba/dmdbms/bin/dmmonitor.ini
-
启停集群
- 启动
A机器:./DmWatcherServiceMPP1_01 start
B机器:./DmWatcherServiceMPP1_02 start
- 停止
A机器:./DmWatcherServiceMPP1_01 stop
B机器:./DmWatcherServiceMPP1_02 stop
A机器:./DmServiceMPP1_01 stop
B机器:./DmServiceMPP1_02 stop
B机器:./DmServiceMPP1_01B stop
A机器:./DmServiceMPP1_02B stop
-
- 一键停止集群服务
- A机器
vi /home/dmdba/dmdbms/bin/stop.sh
/home/dmdba/dmdbms/bin/DmWatcherServiceMPP1_01 stop;
/home/dmdba/dmdbms/bin/DmServiceMPP1_01 stop;
/home/dmdba/dmdbms/bin/DmServiceMPP1_02B stop;
chmod 777 /home/dmdba/dmdbms/bin/stop.sh
- B机器
vi /home/dmdba/dmdbms/bin/stop.sh
/home/dmdba/dmdbms/bin/DmWatcherServiceMPP1_02 stop;
/home/dmdba/dmdbms/bin/DmServiceMPP1_02 stop;
/home/dmdba/dmdbms/bin/DmServiceMPP1_01B stop;
chmod 777 /home/dmdba/dmdbms/bin/stop.sh
- 停止服务
A机器:/home/dmdba/dmdbms/bin/stop.sh
B机器:/home/dmdba/dmdbms/bin/stop.sh
达梦数据库 - 新一代大型通用关系型数据库 | 达梦云适配中心达梦数据库产品体验站,DM8在线试玩,达梦数据库全系列产品免费下载,官方权威的快速上手文档和产品手册,最活跃的达梦技术社区,面向全行业ISV厂商免费的云适配服务。https://eco.dameng.com
最后
以上就是爱撒娇毛巾为你收集整理的DM8MPP双节点搭建的全部内容,希望文章能够帮你解决DM8MPP双节点搭建所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复