最近在学习DM数据库集群,今天将MPP集群部署过程记录下来。
环境准备:两台虚拟机,分别安装DM8,关闭防火墙,能够相互ping通。
配置A机器
初始化实例
[dmdba@localhost ~]$ /opt/dmdbms/bin/dminit PATH=/opt/dmdbms/data/ DB_NAME=MPP1_01 INSTANCE_NAME=MPP1_01 PORT_NUM=5236 PAGE_SIZE=32 LOG_SIZE=2048
initdb V8
db version: 0x7000b
file dm.key not found, use default license!
License will expire on 2021-09-04
log file path: /opt/dmdbms/data/MPP1_01/MPP1_0101.log
log file path: /opt/dmdbms/data/MPP1_01/MPP1_0102.log
write to dir [/opt/dmdbms/data/MPP1_01].
create dm database success. 2021-08-20 17:43:42
启动服务
[dmdba@localhost ~]$ /opt/dmdbms/bin/dmserver /opt/dmdbms/data/MPP1_01/dm.ini
file dm.key not found, use default license!
version info: develop
Use normal os_malloc instead of HugeTLB
Use normal os_malloc instead of HugeTLB
DM Database Server x64 V8 1-1-126-20.09.04-126608-ENT startup...
Database mode = 0, oguid = 0
License will expire on 2021-09-04
file lsn: 0
ndct db load finished
ndct fill fast pool finished
iid page's trxid[1002]
NEXT TRX ID = 1003
pseg_collect_mgr_items, total collect 0 active_trxs, 0 cmt_trxs, 0 pre_cmt_trxs, 0 active_pages, 0 cmt_pages, 0 pre_cmt_pages, 0 mgr pages, 0 mgr recs!
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
pseg recv finished
nsvr_startup end.
aud sys init success.
aud rt sys init success.
trx: 2004 purged 1 pages
trx: 2023 purged 1 pages
trx: 2024 purged 1 pages
trx: 2025 purged 1 pages
trx: 2026 purged 1 pages
trx: 2036 purged 1 pages
trx: 2156 purged 1 pages
trx: 2169 purged 1 pages
trx: 2170 purged 1 pages
trx: 2171 purged 1 pages
trx: 2172 purged 1 pages
trx: 2173 purged 1 pages
trx: 2175 purged 1 pages
trx: 2176 purged 1 pages
trx: 2178 purged 1 pages
trx: 2180 purged 1 pages
trx: 2186 purged 1 pages
trx: 2192 purged 1 pages
trx: 2202 purged 1 pages
trx: 2210 purged 10 pages
trx: 2217 purged 1 pages
trx: 2218 purged 1 pages
trx: 2219 purged 1 pages
trx: 2220 purged 1 pages
trx: 2232 purged 1 pages
trx: 2234 purged 1 pages
trx: 2235 purged 1 pages
trx: 2236 purged 1 pages
trx: 2241 purged 6 pages
trx: 2268 purged 1 pages
trx: 2269 purged 1 pages
trx: 2270 purged 1 pages
trx: 2271 purged 1 pages
trx: 2277 purged 1 pages
trx: 2279 purged 1 pages
trx: 2281 purged 1 pages
trx: 2286 purged 1 pages
trx: 2291 purged 1 pages
trx: 2296 purged 1 pages
trx: 2298 purged 1 pages
trx: 2301 purged 1 pages
trx: 2303 purged 1 pages
trx: 2315 purged 1 pages
trx: 2317 purged 1 pages
trx: 2319 purged 1 pages
trx: 2324 purged 1 pages
trx: 2327 purged 1 pages
trx: 2330 purged 1 pages
trx: 2333 purged 1 pages
trx: 2335 purged 1 pages
trx: 2336 purged 1 pages
trx: 2485 purged 1 pages
trx: 2490 purged 1 pages
trx: 2497 purged 2 pages
trx: 2526 purged 1 pages
systables desc init success.
ndct_db_load_info success.
nsvr_process_before_open begin.
nsvr_process_before_open success.
total 0 active crash trx, pseg_crash_trx_rollback sys_only(0) begin ...
pseg_crash_trx_rollback end, total 0 active crash trx, include 0 empty_trxs, 0 empty_pages which only need to delete mgr recs.
pseg_crash_trx_rollback end
SYSTEM IS READY.
开启归档
[dmdba@localhost ~]$ /opt/dmdbms/bin/disql SYSDBA/SYSDBA@192.168.28.101:5236
服务器[192.168.28.101:5236]:处于普通打开状态
登录使用时间 : 29.693(ms)
disql V8
SQL> ALTER DATABASE MOUNT;
操作已执行
已用时间: 00:00:01.775. 执行号:0.
SQL> ALTER DATABASE ARCHIVELOG;
操作已执行
已用时间: 16.817(毫秒). 执行号:0.
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=/opt/dmdbms/data/MPP1_01/arch, TYPE=LOCAL, FILE_SIZE=1024, SPACE_LIMIT=51200';
操作已执行
已用时间: 45.490(毫秒). 执行号:0.
SQL> ALTER DATABASE OPEN;
备份数据
SQL> BACKUP DATABASE BACKUPSET '/opt/dmdbms/data/MPP1_01/bak/BACKUP_FILE';
操作已执行
已用时间: 00:00:01.361. 执行号:5.
修改dm.ini
SQL> SP_SET_PARA_VALUE (2,'PORT_NUM',5236);
DMSQL 过程已成功完成
已用时间: 25.807(毫秒). 执行号:6.
SQL> SP_SET_PARA_VALUE (2,'DW_INACTIVE_INTERVAL',60);
DMSQL 过程已成功完成
已用时间: 3.288(毫秒). 执行号:7.
SQL> SP_SET_PARA_VALUE (2,'ALTER_MODE_STATUS',0);
DMSQL 过程已成功完成
已用时间: 3.205(毫秒). 执行号:8.
SQL> SP_SET_PARA_VALUE (2,'ENABLE_OFFLINE_TS',2);
DMSQL 过程已成功完成
已用时间: 3.657(毫秒). 执行号:9.
SQL> SP_SET_PARA_VALUE (2,'MAL_INI',1);
DMSQL 过程已成功完成
已用时间: 3.337(毫秒). 执行号:10.
SQL> SP_SET_PARA_VALUE (2,'MPP_INI',1);
DMSQL 过程已成功完成
已用时间: 3.596(毫秒). 执行号:11.
SQL> SP_SET_PARA_VALUE (2,'RLOG_SEND_APPLY_MON',64);
DMSQL 过程已成功完成
已用时间: 3.585(毫秒). 执行号:12.
关闭前台实例服务
替换dmarch.ini
[dmdba@localhost ~]$ vi /opt/dmdbms/data/MPP1_01/dmarch.ini
[dmdba@localhost ~]$ cat /opt/dmdbms/data/MPP1_01/dmarch.ini
#DaMeng Database Archive Configuration file
#this is comments
[ARCHIVE_LOCAL]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /opt/dmdbms/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
[dmdba@localhost ~]$ vi /opt/dmdbms/data/MPP1_01/dmmal.ini
[dmdba@localhost ~]$ cat /opt/dmdbms/data/MPP1_01/dmmal.ini
MAL_CHECK_INTERVAL = 10 #MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 10 #判定MAL链路断开的时间
MAL_TEMP_PATH = /opt/dmdbms/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.28.101 #MAL系统监听TCP连接的IP地址
MAL_PORT = 5336 #MAL系统监听TCP连接的端口
MAL_INST_HOST = 192.168.28.101 #实例的对外服务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.28.102
MAL_PORT = 5337
MAL_INST_HOST = 192.168.28.102
MAL_INST_PORT = 5237
MAL_DW_PORT = 5437
MAL_INST_DW_PORT = 5537
[MAL_INST3]
MAL_INST_NAME = MPP1_02
MAL_HOST = 192.168.28.102
MAL_PORT = 5336
MAL_INST_HOST = 192.168.28.102
MAL_INST_PORT = 5236
MAL_DW_PORT = 5436
MAL_INST_DW_PORT = 5536
[MAL_INST4]
MAL_INST_NAME = MPP1_02B
MAL_HOST = 192.168.28.101
MAL_PORT = 5337
MAL_INST_HOST = 192.168.28.101
MAL_INST_PORT = 5237
MAL_DW_PORT = 5437
MAL_INST_DW_PORT = 5537
创建dmmpp.ini
[dmdba@localhost ~]$ vi /opt/dmdbms/data/MPP1_01/dmmpp.ini
[dmdba@localhost ~]$ cat /opt/dmdbms/data/MPP1_01/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
[dmdba@localhost ~]$ /opt/dmdbms/bin/dmctlcvt t2c /opt/dmdbms/data/MPP1_01/dmmpp.ini /opt/dmdbms/data/MPP1_01/dmmpp.ctl
DMCTLCVT V8
convert txt to ctl success!