dm四节点拆分为两套双节点
客户需求,在原厂支持下完成,进行记录
————————————————————————————————————————————————————————————————————————————————————————
拆分前:
10.8.35.176主,10.8.35.178备,10.8.35.180备,10.8.35.182备
为一套集群,监控为10.8.35.178
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
拆分后:
10.8.35.176主,10.8.35.178备,一套集群,监控为10.8.35.178监控
10.8.35.180主,10.8.35.182备,一套集群,监控为10.8.35.182监控
————————————————————————————————————————————————————————————————————————————————————————
1.前期准备:
原数据全备
backup database full backupset '/oadata/GRP1/dm0825'
dm数据库目录查询方法(此环境安装未使用环境变量,故用此办法)
ps -ef|grep dms
dmdba 487504 1 18 Apr18 ? 24-06:20:09 /home/dmdba/dmdbms/bin/dmserver /home/dmdba/dmdbms/data/DAMENG/dm.ini -noconsole mount
dm数据库进入
./disql
disql V8
用户名:sysdba
密码:
dm数据库监视器
ps -ef|grep dmm
dmdba 2967621 1 0 4月18 ? 02:52:33 /home/dmdba/dmdbms/bin/dmmonitor /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor.ini
监视器启动
/home/dmdba/dmdbms/bin/dmmonitor /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor_noconfirm.ini
2.数据库停止
停止顺序:监视器,备库watch,主库watch,主库server,备库server
停止确认监视器模式:
./DmMonitorServiceDB stop
在备库12停止守护进程服务
./DmWatcherServiceDB12 stop
在备库13停止守护进程服务
./DmWatcherServiceDB13 stop
在备库14停止守护进程服务
./DmWatcherServiceDB14 stop
在主库11停止守护进程服务:
./DmWatcherServiceDB11 stop
在主库 11停止数据库服务:
./DmServiceDB11 stop
在备库 12停止数据库服务
./DmServiceDB02 stop
在备库13停止数据库服务
./DmServiceDB13 stop
在备库14停止数据库服务
./DmServiceDB14 stop
3.修改配置文件
修改其中一套的节点为例
/home/dmdba/dmdbms/data/DAMENG
vi dmmal.ini
#修改后剩余两节点信息,剔除另外两节点直接删除即可
MAL_CHECK_INTERVAL = 5 #MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 5 #判定MAL链路断开的时间
[MAL_INST3]
MAL_INST_NAME = DM13
MAL_HOST = 10.8.35.180
MAL_PORT = 61143
MAL_INST_HOST = 10.8.35.180
MAL_INST_PORT = 5236
MAL_DW_PORT = 52143
MAL_INST_DW_PORT = 33143
[MAL_INST4]
MAL_INST_NAME = DM14
MAL_HOST = 10.8.35.182
MAL_PORT = 61144
MAL_INST_HOST = 10.8.35.182
MAL_INST_PORT = 5236
MAL_DW_PORT = 52144
MAL_INST_DW_PORT = 33144
vi dmarch.ini
#剔除另外两节点直接删除即可,保留节点名和ARCH_TYPE,可设置为ARCHIVE_REALTIME,REALTIME或ARCHIVE_TIMELY,TIMELY,作用为实时与异步传输归档,根据情况选择
#ARCH_FILE_SIZE默认单位M,不可修改,该参数仅支持数字类型,不可添加单位
#ARCH_SPACE_LIMIT总归档大小,超过该值将自动覆盖,请安装根据实际数据量情况进行备份任务调度
[ARCHIVE_REALTIME3]
ARCH_TYPE = REALTIME
ARCH_DEST = DM14 ##
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /home/dmdba/dmdbms/data/DAMENG/arch
ARCH_FILE_SIZE = 1024
ARCH_SPACE_LIMIT = 102400
vi dmwatcher.ini
#INST_OGUID与[GRP0825],需要进行修改,防止与另外一套两节点冲突,参数为同一集群下配置为一致
[GRP0825]
DW_TYPE = GLOBAL #实时守护类型
DW_MODE = AUTO #自动切换模式
DW_ERROR_TIME = 10 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 10 #本地实例故障认定时间
INST_OGUID = 450825 #守护系统唯一OGUID值
INST_INI = /home/dmdba/dmdbms/data/DAMENG/dm.ini #dm.ini配置文件路径
INST_AUTO_RESTART = 1 #打开实例的自动拉起功能
INST_STARTUP_CMD = /home/dmdbms/bin/dmserver#命令行方式启动
RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阀值,默认关闭
RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阀值,默认关闭
4.数据恢复
./dmrman
restore database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' from backupset '/oadata/GRP1/dm0825';
recover database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' from backupset '/oadata/GRP1/dm0825';
recover database '/home/dmdba/dmdbms/data/DAMENG/dm.ini' update db_magic;
启动程序
./DmServiceDM0 start
./disql
进入数据库内会显示配置状态
./DmWatcherServiceDM0 start
5.一套集群中挑选一个服务器作为监控器(*两节点中只有一个节点做*)
vi /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor.ini
#剔除另外两节点ip,修改标题,MON_DW_Confirm,1为后台模式,0为交互模式
MON_DW_Confirm = 1 #确认监视器模式
MON_LOG_PATH = /home/dmdba/dmdbms/data/dmmonitorlog/log #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
[GRP0825]
MON_INST_OGUID = 450825 #组 GRP1 的唯一 OGUID 值
#以下配置为监视器到组 GRP1 的守护进程的连接信息,以“IP:PORT”的形式配置
#IP 对应 dmmal.ini 中的 MAL_HOST, PORT 对应 dmmal.ini 中的 MAL_DW_PORT
MON_DW_IP = 10.8.35.180:52143
MON_DW_IP = 10.8.35.182:52144
vi /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor_noconfirm.ini
#剔除另外两节点ip,修改标题
MON_DW_Confirm = 0 #确认监视器模式
MON_LOG_PATH = /home/dmdba/dmdbms/data/dmmonitorlog/log #监视器日志文件存放路径
MON_LOG_INTERVAL = 60 #每隔 60s 定时记录系统信息到日志文件
MON_LOG_FILE_SIZE = 32 #每个日志文件最大 32M
MON_LOG_SPACE_LIMIT = 0 #不限定日志文件总占用空间
[GRP0825]
MON_INST_OGUID = 450825 #组 GRP1 的唯一 OGUID 值
#以下配置为监视器到组 GRP1 的守护进程的连接信息,以“IP:PORT”的形式配置
#IP 对应 dmmal.ini 中的 MAL_HOST, PORT 对应 dmmal.ini 中的 MAL_DW_PORT
MON_DW_IP = 10.8.35.180:52143
MON_DW_IP = 10.8.35.182:52144
#启动监视器
/home/dmdba/dmdbms/bin/dmmonitor /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor_noconfirm.ini
#启动监视器
/home/dmdba/dmdbms/bin/dmmonitor /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor.ini
#root用户
#删除原监视器,注册监视器服务
cd /home/dmdba/dmdbms/script/root/
[root@localhost root]# ./dm_service_uninstaller.sh -n DmMonitorServiceGRP1
是否删除服务(DmMonitorServiceGRP1)?(Y/y:是 N/n:否): y
Removed /etc/systemd/system/multi-user.target.wants/DmMonitorServiceGRP1.service.
删除服务文件(/usr/lib/systemd/system/DmMonitorServiceGRP1.service)完成
删除服务(DmMonitorServiceGRP1)完成
[root@localhost root]# ./dm_service_uninstaller.sh -n DmMonitorServiceGRP2
是否删除服务(DmMonitorServiceGRP2)?(Y/y:是 N/n:否): y
Removed /etc/systemd/system/multi-user.target.wants/DmMonitorServiceGRP2.service.
删除服务文件(/usr/lib/systemd/system/DmMonitorServiceGRP2.service)完成
删除服务(DmMonitorServiceGRP2)完成
#-p 为监视器后缀,注册完成后bin目录下会出现该监视器程序
./dm_service_installer.sh -t dmmonitor -p GRP085 -monitor_ini /home/dmdba/dmdbms/data/dmmonitorlog/GRP1/dmmonitor.ini
#回到dmdba软件bin目录
./DmMonitorServiceGRP085 start