达梦8数据守护主备集群搭建(类似于Oracle的DataGuard)
2022/7/4 2:20:07
本文主要是介绍达梦8数据守护主备集群搭建(类似于Oracle的DataGuard),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、环境
主机:192.168.190.128
备机:192.168.190.129
监视器:192.168.190.130
数据库名 实例名 PORT_NUM MAL_INST_DW_PORT MAL_HOST MAL_PORT MAL_DW_PORT
DMDW DMDW01 5246 45101 192.168.190.128 55101 65101
DMDW DMDW02 5246 45121 192.168.190.129 55121 65121
要求:
1、数据名要求一样,实例名不一样
2、主备机的时间(监护器机器的时候最好也一致,否则监视的时候会出现问题)要求一致,不能超过5分钟
3、关闭SELINUX和防火墙
二、初始化实例
1、创建主备机的实例
$/dm8/tool/dbca
三、主库进行全备
#systemctl stop DmServiceDMDW01.service
#su - dmdba
$/dm8/bin/dmrman CTLSTMT="BACKUP DATABASE '/dm8/data/DMDW/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/dm8/backup/BACKUP_FILE_01'"
$scp /dm8/backup/BACKUP_FILE_01/*.* 192.168.190.129:/dm8/backup
四、备库进行恢复
#systemctl stop DmServiceDMDW02.service
#su - dmdba
$/dm8/bin/dmrman CTLSTMT="RESTORE DATABASE '/dm8/data/DMDW/dm.ini' FROM BACKUPSET '/dm8/backup'"
$/dm8/bin/dmrman CTLSTMT="RECOVER DATABASE '/dm8/data/DMDW/dm.ini' FROM BACKUPSET '/dm8/backup'"
$/dm8/bin/dmrman CTLSTMT="RECOVER DATABASE '/dm8/data/DMDW/dm.ini' UPDATE DB_MAGIC"
五、配置相关文件(/dm8/data/DMDW目录下)
修改dm.ini,并配置dmmal.ini、dmarch.ini、dmwatcher.ini文件
1、primary主机配置
dm.ini
------
INSTANCE_NAME = DMDW01
PORT_NUM = 5246
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
RLOG_SEND_APPLY_MON = 64
dmmal.ini
---------
MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = DMDW01
MAL_HOST = 192.168.190.128
MAL_PORT = 55101
MAL_INST_HOST = 192.168.190.128
MAL_INST_PORT = 5246
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMDW02
MAL_HOST = 192.168.190.129
MAL_PORT = 55121
MAL_INST_HOST = 192.168.190.129
MAL_INST_PORT = 5246
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121
dmarch.ini
----------
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMDW02
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0
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 = /dm8/data/DMDW/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0
启动主库
$/dm8/bin/dmserver /dm8/data/DMDW/dm.ini mount
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);
2、standby备机配置
dm.ini
------
INSTANCE_NAME = DMDW02
PORT_NUM = 5246
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
RLOG_SEND_APPLY_MON = 64
dmmal.ini
---------
MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = DMDW01
MAL_HOST = 192.168.190.128
MAL_PORT = 55101
MAL_INST_HOST = 192.168.190.128
MAL_INST_PORT = 5246
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMDW02
MAL_HOST = 192.168.190.129
MAL_PORT = 55121
MAL_INST_HOST = 192.168.190.129
MAL_INST_PORT = 5246
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121
dmarch.ini
----------
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMDW01
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0
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 = /dm8/data/DMDW/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/bin/dmserver
RLOG_APPLY_THRESHOLD = 0
以 Mount 方式启动备库
$/dm8/bin/dmserver /dm8/data/DMDW/dm.ini mount
$/dm8/bin/disql sysdba/dameng123@localhost:5246
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL>sp_set_oguid(453331);
SQL>alter database standby;
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
3、分别启动主备机的监视进程,系统会自动把主备库修改到OPEN状态
$/dm8/bin/dmwatcher /dm8/data/DMDW/dmwatcher.ini
4、dmmonitor监视器配置(此机器只需要安装数据库软件,不需要初始化实例,只能有一个确认监视器,可以有多个非确认监视器)
$vi /dm8/dmmonitor.ini
MON_DW_CONFIRM = 1
MON_LOG_PATH = /dm8/data/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
[GRP1]
MON_INST_OGUID = 453331
MON_DW_IP = 192.168.190.128:65101
MON_DW_IP = 192.168.190.129:65121
启动监视器
$/dm8/bin/dmmonitor /dm8/dmmonitor.ini
五、将实例服务、数据守护和监视服务注册到操作系统中(实现操作系统启动后自动启动)
#/dm8/script/root/dm_service_installer.sh -t dmserver -p DMDW01 -m mount -dm_ini /dm8/data/DMDW/dm.ini (主库若执行了实例创建则默认会注册此服务,不需要再注册此服务了)
#/dm8/script/root/dm_service_installer.sh -t dmserver -p DMDW02 -m mount -dm_ini /dm8/data/DMDW/dm.ini (备库若执行了实例创建则默认会注册此服务,不需要再注册此服务了)
#/dm8/script/root/dm_service_installer.sh -t dmwatcher -p DMWATCHER -watcher_ini /dm8/data/DMDW/dmwatcher.ini
#/dm8/script/root/dm_service_installer.sh -t dmmonitor -p DMMONITOR -monitor_ini /dm8/dmmonitor.ini
六、监视器常用命令(在监视器的控制台上输入)
show:查询基本信息
login:登录监视器(sysdba登录)
switchover:主备切换
exit:退出监视器
七、实时主备集群重启顺序:
1、关闭监视器
2、关闭主库守护进程
3、关闭备库守护进程
4、关闭主库实例
5、关闭备库实例
6、启动主库实例 (mount)
7、启动备库实例 (mount)
8、启动主库守护进程 (open)
9、启动备库守护进程 (open)
10、启动监视器
监视器:监控数据守护系统
管理数据守护系统
确认状态信息
发起故障自动接管命令----确认模式
监控模式: MON_DW_CONFIRM 参数的默认值是 0, 表示监控模式;
MON_DW_CONFIRM 参数值为 1 时, 表示监视器运行在确认模式下。
八、确认监视器注册为操作系统服务后监视问题
如果把确认监视器作为操作系统服务放在后台运行时,则看不到监视器的广播信息。可启动一个普通监视器来查看数据库状态信息。
$vi /dm8/dmmonitor2.ini
MON_DW_CONFIRM = 0
MON_LOG_PATH = /dm8/data/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
[GRP1]
MON_INST_OGUID = 453331
MON_DW_IP = 192.168.190.128:65101
MON_DW_IP = 192.168.190.129:65121
启动普通监视器
$/dm8/bin/dmmonitor /dm8/dmmonitor2.ini
这篇关于达梦8数据守护主备集群搭建(类似于Oracle的DataGuard)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23DevExpress 怎么实现右键菜单(Context Menu)显示中文?-icode9专业技术文章分享
- 2024-12-22怎么通过控制台去看我的页面渲染的内容在哪个文件中呢-icode9专业技术文章分享
- 2024-12-22el-tabs 组件只被引用了一次,但有时会渲染两次是什么原因?-icode9专业技术文章分享
- 2024-12-22wordpress有哪些好的安全插件?-icode9专业技术文章分享
- 2024-12-22wordpress如何查看系统有哪些cron任务?-icode9专业技术文章分享
- 2024-12-21Svg Sprite Icon教程:轻松入门与应用指南
- 2024-12-20Excel数据导出实战:新手必学的简单教程
- 2024-12-20RBAC的权限实战:新手入门教程
- 2024-12-20Svg Sprite Icon实战:从入门到上手的全面指南
- 2024-12-20LCD1602显示模块详解