注册
DM数据守护配置方法及重点参数详解
专栏/培训园地/ 文章详情 /

DM数据守护配置方法及重点参数详解

果儿 2024/08/23 457 1 0
摘要

DM数据守护配置方法

数据守护节点规划:
dwp 192.168.1.100 ---主机
dws 192.168.1.101 ---备机
dwm 192.168.1.102 ---监视器

数据守护端口规划:
数据库名 实例名 PORT_NUM MAL_INST_DW_PORT MAL_HOST MAL_PORT MAL_DW_PORT
DAMENG DMSERVER01 5236 45101 192.168.1.100 55101 65101
DAMENG DMSERVER02 5236 45121 192.168.1.102 55121 65121

一 主库配置:

1 初始化实例
方式一 图形化操作 DBCA
方式二 命令行初始化命令如下:
主库(IP: 192.168.1.100 实例名:DMSERVER01):
./dminit path=/dm8/data DB_NAME=DAMENG INSTANCE_NAME=DMSERVER01 PAGE_SIZE=8 EXTENT_SIZE=16 LOG_SIZE=200 CASE_SENSITIVE=Y SYSDBA_PWD=SYSDBA

--注意点 dbca初始化数据库,在初始化过程中会注册数据库服务。如果用命令初始化需要自己手动注册服务,命令如下:
/dm8/script/root/dm_service_installer.sh -t dmserver -p DMSERVER01 -dm_ini /dm8/data/DAMENG/dm.ini

2 主库关闭实例,备份全库
DmServiceDMSERVER01 stop
DMRMAN方式:
BACKUP DATABASE '/dm8/data/DAMENG/dm.ini' FULL TO BACKUP_FILE BACKUPSET '/dm8/backup'

3 将备份文件拷贝到备库
scp /dm8/backup/* 192.168.1.101:/dm8/backup

4 主库配置文件的关键参数配置和详解

有4个配置文件要配置 所在目录 :/dm8/data/DAMENG/
-- dm.ini dmmal.ini dmarch.ini dmwatcher.ini

dm.ini

INSTANCE_NAME = DMSERVER01
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0 -不允许手动修改数据库模式
ENABLE_OFFLINE_TS = 2 -不允许把备库的表空间OFFLINE
MAL_INI = 1 - 通信系统打开
ARCH_INI = 1 -归档打开
RLOG_SEND_APPLY_MON = 64 --统计最近64次主库向备库发送归档的时间


dmmal.ini

MAL_CHECK_INTERVAL = 5 --MAL 链路检测的时间间隔
MAL_CONN_FAIL_INTERVAL = 5 --判定MAL链路断开时间
[MAL_INST1]
MAL_INST_NAME = DMSERVER01
MAL_HOST = 192.168.1.100 --MAL系统地址(若有内网地址,配置内网的)
MAL_PORT = 55101 --MAL监听端口
MAL_INST_HOST = 192.168.1.100 --实例对外服务外网地址
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101 --MAL实例在本地守护进程监听端口号
MAL_INST_DW_PORT = 45101 --MAL实例监听守护进程端口号
[MAL_INST2]
MAL_INST_NAME = DMSERVER02
MAL_HOST = 192.168.1.101
MAL_PORT = 55121
MAL_INST_HOST = 192.168.1.101
MAL_INST_PORT = 5236
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121


dmarch.ini

[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME --归档类型
ARCH_DEST = DMSERVER02 --注:此处写备库实例名
[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/DAMENG/dm.ini -主库实例配置文件绝对路径
INST_AUTO_RESTART = 1 -是否自动重启数据库实例
INST_STARTUP_CMD = /dm8/bin/dmserver -重启实例命令
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0

5 主库启动到MOUNT状态
方式一:
./dmserver /dm8/data/DAMENG/dm.ini mount
方式二:
./DmServiceDMSERVER01 mount

6 修改主库模式和设置OGUID

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);

二 备库配置:

1 初始化实例
方式一 图形化操作 DBCA
方式二 命令行初始化命令如下:
备库(IP: 192.168.1.101 实例名:DMSERVER02):
./dminit path=/dm8/data DB_NAME=DAMENG INSTANCE_NAME=DMSERVER02 PAGE_SIZE=8 EXTENT_SIZE=16 LOG_SIZE=200 CASE_SENSITIVE=Y SYSDBA_PWD=SYSDBA

--注意点 dbca初始化数据库,在初始化过程中会注册数据库服务。如果用命令初始化需要自己手动注册服务,命令如下:
/dm8/script/root/dm_service_installer.sh -t dmserver -p DMSERVER02 -dm_ini /dm8/data/DAMENG/dm.ini

2 备库关闭实例
DmServiceDMSERVER02 stop
3 将主库备份文件还原恢复到备库
DMRMAN下操作:
RESTORE DATABASE '/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup;
RECOVER DATABASE '/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup;
RECOVER DATABASE '/dm8/data/DAMENG/dm.ini' UPDATE DB_MAGIC; --注意此更新魔术一定要操作

4 备库配置文件的关键参数配置和详解

有4个配置文件要配置 所在目录 :/dm8/data/DAMENG/
-- dm.ini dmmal.ini dmarch.ini dmwatcher.ini

dm.ini

INSTANCE_NAME = DMSERVER01
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0 -不允许手动修改数据库模式
ENABLE_OFFLINE_TS = 2 -不允许把备库的表空间OFFLINE
MAL_INI = 1 - 通信系统打开
ARCH_INI = 1 -归档打开
RLOG_SEND_APPLY_MON = 64 --统计最近64次主库向备库发送归档的时间


dmmal.ini

MAL_CHECK_INTERVAL = 5 --MAL 链路检测的时间间隔
MAL_CONN_FAIL_INTERVAL = 5 --判定MAL链路断开时间
[MAL_INST1]
MAL_INST_NAME = DMSERVER01
MAL_HOST = 192.168.1.100 --MAL系统地址(若有内网地址,配置内网的)
MAL_PORT = 55101 --MAL监听端口
MAL_INST_HOST = 192.168.1.100 --实例对外服务外网地址
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101 --MAL实例在本地守护进程监听端口号
MAL_INST_DW_PORT = 45101 --MAL实例监听守护进程端口号
[MAL_INST2]
MAL_INST_NAME = DMSERVER02
MAL_HOST = 192.168.1.101
MAL_PORT = 55121
MAL_INST_HOST = 192.168.1.101
MAL_INST_PORT = 5236
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121


dmarch.ini

[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME --归档类型
ARCH_DEST = DMSERVER01 --注:此处写主库实例名
[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/DAMENG/dm.ini -主库实例配置文件绝对路径
INST_AUTO_RESTART = 1 -是否自动重启数据库实例
INST_STARTUP_CMD = /dm8/bin/dmserver -重启实例命令
RLOG_APPLY_THRESHOLD = 0

5 备库启动到MOUNT状态
方式一:
./dmserver /dm8/data/DAMENG/dm.ini mount
方式二:
./DmServiceDMSERVER02 mount

6 修改备库模式和设置OGUID

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);

三 启动主备库守护进程
启主库守护进程
[dmdba@/dm8/bin]#./dmwatcher /dm8/data/DAMENG/dmwatcher.ini
启备库守护进程
[dmdba@/dm8/bin]#./dmwatcher /dm8/data/DAMENG/dmwatcher.ini

此时守护进程会把实例启动到OPEN状态
测试主库
--DISQL
create table test1(id int);
测试备库
select * from test1; --查询没有报错,说明主库及时同步到备库

四 搭建监视器

1 --配置

cd /dm8
vi dmmonitor.ini
MON_DW_CONFIRM = 1 --监视器模式 1自动切换 0手动切换
MON_LOG_PATH = /dm8/data/log
MON_LOG_INTERVAL = 60 --自动记录系统状态到日志文件的时间间隔
MON_LOG_FILE_SIZE = 32 --单个日志文件的大小
MON_LOG_SPACE_LIMIT = 0 --日志总空间大小限制 0不限制
[GRP1]
MON_INST_OGUID = 453331 --与主备库的OGUID一致
MON_DW_IP = 192.168.1.100:65101
MON_DW_IP = 192.168.1.101:65121

2 启动监视器
cd /dm8/bin
./dmmonitor /dm8/dmmonitor.ini
登录
login
SYSDBA/SYSDBA
切换测试
switchover
switchover

五 注册守护服务 和监视器服务

cd /dm8/script/root

-- 注意 ROOT 用户下执行

注册主库的守护进程
[root@~]# /dm8/script/root/dm_service_installer.sh -t dmwatcher -p DMWatcher -watcher_ini /dm8/data/DAMENG/dmwatcher.ini

注册备库的守护进程
[root@~]# /dm8/script/root/dm_service_installer.sh -t dmwatcher -p DMWatcher -watcher_ini /dm8/data/DAMENG/dmwatcher.ini

--注册监视器服务
/dm8/script/root/dm_service_installer.sh -t dmmonitor -p DMMONITOR -monitor_ini /dm8/dmmonitor.ini

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服