注册
DM8 达梦 数据库 数据守护(Data Watch) 实时主备环境搭建
技术分享/ 文章详情 /

DM8 达梦 数据库 数据守护(Data Watch) 实时主备环境搭建

DM_064236 2023/02/28 2270 2 0
  1. 配置清单
    准备3台测试服务器,kylinv10、kylinv101作为主备数据库,kylinv10dmmo作为监视器(dbmonitor)。
    kylinv10(192.168.153.90)
    kylinv101(192.168.153.91)
    kylinv10dmmo(192.168.153.92)
    主备库的配置规划如下,生产环境的 MAL_HOST 建议使用独立网段IP。

数据库名 实例名 PORT_NUM MAL_INST_DW_PORT MAL_HOST MAL_PORT MAL_DW_PORT
DM8DCP DM8DCP1 5236 45101 192.168.153.90 55101 65101
DM8DCP DM8DCP2 5236 45121 192.168.153.91 55121 65121

  1. 主库备份

以dmdba用户访问kylinv10(192.168.153.90)

mkdir /dm8/backup
cd /dm8/dmdbms/bin
./DmServicedm8dcp stop
./dmrman
BACKUP DATABASE ‘/dm8/data/dm8dcp/dm.ini’ FULL TO BACKUP_FILE1 BACKUPSET ‘/dm8/backup/BACKUP_FILE_01’
exit
备份文件传输到备库
scp /dm8/backup/BACKUP_FILE_01/. dmdba@192.168.153.91:/dm8/backup/BACKUP_FILE_01

  1. 备库恢复还原

以dmdba用户访问kylinv101(192.168.153.91)

cd /dm8/dmdbms/bin
./DmServicedm8dcp stop

./dmrman
RESTORE DATABASE ‘/dm8/data/dm8dcp/dm.ini’ FROM BACKUPSET ‘/dm8/backup/BACKUP_FILE_01’
RECOVER DATABASE ‘/dm8/data/dm8dcp/dm.ini’ FROM BACKUPSET ‘/dm8/backup/BACKUP_FILE_01’
RECOVER DATABASE ‘/dm8/data/dm8dcp/dm.ini’ UPDATE DB_MAGIC
exit

  1. 配置主库

(1) dm.ini 配置

以dmdba用户访问kylinv10(192.168.153.90)

cd /dm8/data/dm8dcp
vi dm.ini

INSTANCE_NAME = DM8DCP1
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
RLOG_SEND_APPLY_MON = 64

(2) dmmal.ini 配置

cd /dm8/data/dm8dcp
vi dmmal.ini

MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = DM8DCP1
MAL_HOST = 192.168.153.90
MAL_PORT = 55101
MAL_INST_HOST = 192.168.153.90
MAL_INST_PORT = 5236 ##等于数据库服务端口PORT_NUM
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DM8DCP2
MAL_HOST = 192.168.153.91
MAL_PORT = 55121
MAL_INST_HOST = 192.168.153.91
MAL_INST_PORT = 5236 ##等于数据库服务端口PORT_NUM
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121

(3) dmarch.ini 配置

cd /dm8/data/dm8dcp
vi dmarch.ini

[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DM8DCP2
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/data/dm8dcp/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0

(4) dmwatcher.ini 配置

cd /dm8/data/dm8dcp
vi 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/dm8dcp/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/dmdbms/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0

  1. mount状态启动主库

/dm8/dmdbms/bin/dmserver /dm8/data/dm8dcp/dm.ini mount

设置为手动更新配置:

SQL>SP_SET_PARA_VALUE(1, ‘ALTER_MODE_STATUS’, 1);

设置OGUID:

SQL>sp_set_oguid(453331);

设置为主库:

SQL>alter database primary;

设置为不许手动更新配置:

SQL>SP_SET_PARA_VALUE(1, ‘ALTER_MODE_STATUS’, 0);


  1. 配置备库

(1) dm.ini 配置

以dmdba用户访问kylinv101(192.168.153.91)

cd /dm8/data/dm8dcp
vi dm.ini

INSTANCE_NAME = DM8DCP2
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
RLOG_SEND_APPLY_MON = 64

(2) dmmal.ini 配置

cd /dm8/data/dm8dcp
vi dmmal.ini

MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5
[MAL_INST1]
MAL_INST_NAME = DM8DCP1
MAL_HOST = 192.168.153.90
MAL_PORT = 55101
MAL_INST_HOST = 192.168.153.90
MAL_INST_PORT = 5236 ##等于数据库服务端口PORT_NUM
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DM8DCP2
MAL_HOST = 192.168.153.91
MAL_PORT = 55121
MAL_INST_HOST = 192.168.153.91
MAL_INST_PORT = 5236 ##等于数据库服务端口PORT_NUM
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121

(3) dmarch.ini 配置

cd /dm8/data/dm8dcp
vi dmarch.ini

[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DM8DCP1
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/data/dm8dcp/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0

(4) dmwatcher.ini 配置

cd /dm8/data/DMTEST
vi 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/dm8dcp/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/dmdbms/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0

  1. mount状态启动备库

/dm8/dmdbms/bin/dmserver /dm8/data/dm8dcp/dm.ini mount

设置为手动更新配置:

SQL>SP_SET_PARA_VALUE(1, ‘ALTER_MODE_STATUS’, 1);

设置OGUID:

SQL>sp_set_oguid(453331);

设置为备库:

SQL>alter database standby;

设置为不许手动更新配置:

SQL>SP_SET_PARA_VALUE(1, ‘ALTER_MODE_STATUS’, 0);



  1. 启动dmwatcher

以dmdba用户访问kylinv10(192.168.153.90)

/dm8/dmdbms/bin/dmwatcher /dm8/data/dm8dcp/dmwatcher.ini

以dmdba用户访问kylinv101(192.168.153.91)

/dm8/dmdbms/bin/dmwatcher /dm8/data/dm8dcp/dmwatcher.ini

  1. 启动dmmonitor

以dmdba用户访问kylinv10dmmo(192.168.153.92)

cd /dm8
vi 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.153.90:65101
MON_DW_IP = 192.168.153.91:65121

启动:

/dm8/dmdbms/bin/dmmonitor /dm8/dmmonitor.ini

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服