达梦数据库 DCP(DM Certified Professional)认证被不少从业者视为“国产数据库领域的中级敲门砖”。官方把认证分成 DCA(管理员)、DCP(专业人士)、DCM(大师)三级。DCP 的定位是“能独立部署、优化、容灾”。
DM 数据守护(Data Watch)是一种集成化的高可用、高性能数据库解决方案,是数据库异地容灾的首选方案。
DM 数据守护(DM Data Watch)实现原理:将主库(生产库)产生的 Redo 日志传输到备库,备库接收并重新应用 Redo 日志,从而实现备库与主库的数据同步。DM 数据守护的核心思想是监控数据库状态,获取主、备库数据同步情况,为 Redo 日志传输与重演过程中出现的各种异常情况提供一系列的解决方案。
主库:192.168.10.111
备库:192.168.10.112
监视器:192.168.10.113
操作系统:麒麟V10+X86,8G+16G
数据库:dm8_20250527_x86_kylin10_64.iso
1.三台服务器都需要提前安装好dm8(安装过程省略),主库数据库实例名:DMSERVER01;备库数据库实例名:DMSERVER02
2.数据库安装目录:/dm8,实例存放路径:/dm8/data/DM01/。数据库用户名和密码:SYSDBA/DMsysdba8888
2.主库进行一次完整备份,并将备份文件拷贝到备库
3.关闭主、备库
4.端口规划
MAL_CHECK_INTERVAL = 5 #MAL 链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 5 #判定 MAL 链路断开的时间
[MAL_INST1]
MAL_INST_NAME = DMSERVER01 #实例名,和 dm.ini 中的 INSTANCE_NAME 一致
MAL_HOST = 192.168.10.111 #MAL 系统监听 TCP 连接的 IP 地址
MAL_PORT = 61141 #MAL 系统监听 TCP 连接的端口
MAL_INST_HOST = 192.168.10.111 #实例的对外服务 IP 地址
MAL_INST_PORT = 5236 #实例的对外服务端口,和 dm.ini 中的 PORT_NUM 一致
MAL_DW_PORT = 52141 #实例本地的守护进程监听 TCP 连接的端口
MAL_INST_DW_PORT = 33141 #实例监听守护进程 TCP 连接的端口
[MAL_INST2]
MAL_INST_NAME = DMSERVER02
MAL_HOST = 192.168.10.112
MAL_PORT = 61142
MAL_INST_HOST = 192.168.10.112
MAL_INST_PORT = 5236
MAL_DW_PORT = 52142
MAL_INST_DW_PORT = 33142
主库:
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = DMSERVER2 #实时归档目标实例名(主机和备份配置不同,配置向备机同步)
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /dm8/arch #本地归档文件存放路径
ARCH_FILE_SIZE = 128 #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT = 0 #单位 Mb,0 表示无限制,范围 1024~4294967294M
备库:
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME #实时归档类型
ARCH_DEST = DMSERVER1 #实时归档目标实例名(主机和备份配置不同,配置向备机同步)
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL #本地归档类型
ARCH_DEST = /dm8/arch #本地归档文件存放路径
ARCH_FILE_SIZE = 128 #单位 Mb,本地单个归档文件最大值
ARCH_SPACE_LIMIT = 0 #单位 Mb,0 表示无限制,范围 1024~4294967294M
[GRP1]
DW_TYPE = GLOBAL #全局守护类型
DW_MODE = AUTO #自动切换模式
DW_ERROR_TIME = 10 #远程守护进程故障认定时间
INST_RECOVER_TIME = 60 #主库守护进程启动恢复的间隔时间
INST_ERROR_TIME = 10 #本地实例故障认定时间
INST_OGUID = 9999 #守护系统唯一 OGUID 值(这里要和数据库的 OGUID 一致,OGUID 是写入控制文件的)
INST_INI = /dm8/data/DM01/dm.ini #dm.ini 配置文件路径
INST_AUTO_RESTART = 1 #打开实例的自动启动功能
INST_STARTUP_CMD = /dm8/bin/dmserver #命令行方式启动
RLOG_SEND_THRESHOLD = 0 #指定主库发送日志到备库的时间阀值,默认关闭
RLOG_APPLY_THRESHOLD = 0 #指定备库重演日志的时间阈值,默认关闭
MON_DW_CONFIRM = 1
MON_LOG_PATH = /dm8/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
[GRP1]
MON_INST_OGUID = 9999 #监视器中的 OGUID 要与数据库设置的一致
MON_DW_IP = 192.168.10.111:52141
MON_DW_IP = 192.168.10.112:52142
修改dm.ini的参数
MAL_INI = 1
ARCH_INI = 1
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
cd /dm8/bin/
./dmserver /dm8/data/DM01/dm.ini mount
./dmrman
restore database '/dm8/data/DM01/dm.ini' from backupset '/dm8/backup';#还原
recover database '/dm8/data/DM01/dm.ini' from backupset '/dm8/backup';#恢复
recover database '/dm8/data/DM01/dm.ini' update db_magic;#更新魔术值
./dmserver /dm8/data/DM01/dm.ini mount
./disql SYSDBA/DMsysdba8888
sp_set_oguid(9999);
alter database primary;
./disql SYSDBA/DMsysdba8888
sp_set_oguid(9999);
alter database standby;
./dmwatcher /dm8/data/DM01/dmwatcher.ini
./dmwatcher /dm8/data/DM01/dmwatcher.ini
./dmmonitor /dm8/data/dmmonitor.ini
cd /dm8/script/root
./dm_service_installer.sh -t dmwatcher -p DMSERVER -watcher_ini /dm8/data/DM01/dmwatcher.ini
./dm_service_installer.sh -t dmwatcher -p DMSERVER -watcher_ini /dm8/data/DM01/dmwatcher.ini
文章
阅读量
获赞
