Loading

达梦主备集群搭建

1. 环境准备

主机 ip地址 实例名 操作系统
rh1 192.168.44.112 GRP_SP_1 Redhat6
rh2 192.168.44.111 GRP_SP_2 Redhat6
添加用户组和用户
root@rh1# groupadd dinstall
root@rh1# useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
root@rh1# passwd dmdba

挂载安装包并授权
root@rh1# mount -o loop dm.iso /mnt
root@rh1# cp -a /mnt/DMInstall.bin /dm8/
root@rh1# chown -R dmdba:dinstall DMInstall.bin
root@rh1# su - dmdba
dmdba@rh1$ ./ DMInstall.bin -i

2. 初始化数据库

dmdba@rh1$ mkdir /home/dmdba/dmdbms/data
dmdba@rh1$ cd /home/dmdba/dmdbms/bin
dmdba@rh1$ ./dminit path=/home/dmdba/dmdbms/data db_name=GRP_SP_1 instance_name=GRP_SP_1 PORT_NUM=5236

备库类似
image

3. 启停主备库数据库

使用前台启动的方式,启停主备库数据库一次。
./dmserver /home/dmdba/dmdbms/data/GRP_SP_1/dm.ini
成功启动后输入exit即可退出。

4. 备份还原

主库备份
./dmrman ctlstmt="backup database '/home/dmdba/dmdbms/data/GRP_SP_1/dm.ini' full to bk_sp backupset'/home/dmdba/dmdbms/bk_sp'"
image

备库数据库还原:
./dmrman ctlstmt=" restore database '/home/dmdba/dmdbms/data/GRP_SP_2/dm.ini' from backupset '/home/dmdba/dmdbms/data/bk_sp'"
image

备库数据库恢复:
./dmrman ctlstmt=" recover database '/home/dmdba/dmdbms/data/GRP_SP_2/dm.ini' from backupset '/home/dmdba/dmdbms/data/bk_sp'"
image

备库更新:
./dmrman ctlstmt="recover database '/home/dmdba/dmdbms/data/GRP_SP_2/dm.ini' update db_magic"
image

5. 配置主库

5.1修改dm.ini文件

ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1

5.2配置dmmal.ini文件

MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5

[MAL_INST1]
MAL_INST_NAME = GRP_SP_1
MAL_HOST = 192.168.44.112
MAL_PORT = 61141
MAL_INST_PORT = 5236
MAL_INST_HOST = 192.168.44.112
MAL_DW_PORT = 52141
MAL_INST_DW_PORT = 33141

[MAL_INST2]
MAL_INST_NAME = GRP_SP_2
MAL_HOST = 192.168.44.111
MAL_PORT = 61142
MAL_INST_PORT = 5236
MAL_INST_HOST = 192.168.44.111
MAL_DW_PORT = 52142
MAL_INST_DW_PORT = 33142

5.3配置 dmarch.ini

[CHIVE_REALTIME]
ARCH_TYPE = REALTIME 
ARCH_DEST = GRP_SP_2
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /home/dmdba/dmdbms/data/arch_file 
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0

5.4配置dmwatcher.ini文件

[GRP_SP]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60 
INST_ERROR_TIME = 10
INST_OGUID = 453332
INST_INI = /home/dmdba/dmdbms/data/GRP_SP_1/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0

5.5启动主库

以 Mount 方式启动主库
./dmserver /dm/data/DAMENG/dm.ini mount

5.6设置 OGUID、修改数据库模式

启动命令行工具 disql输入以下语句:

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

6. 配置备库

6.1修改dm.ini文件

ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1

6.2配置dmmal.ini文件

配置MAL系统,各主备库的 dmmal.ini 配置必须完全一致,MAL_HOST 使用内部网络IP,MAL_PORT与dm.ini中PORT_NUM 使用不同的端口值,MAL_DW_PORT 是各实例对应的守护进程之间,以及守护进程和监视器之间的通信端口。

MAL_CHECK_INTERVAL = 5
MAL_CONN_FAIL_INTERVAL = 5

[MAL_INST1]
MAL_INST_NAME = GRP_SP_1
MAL_HOST = 192.168.44.112
MAL_PORT = 61141
MAL_INST_PORT = 5236
MAL_INST_HOST = 192.168.44.112
MAL_DW_PORT = 52141
MAL_INST_DW_PORT = 33141

[MAL_INST2]
MAL_INST_NAME = GRP_SP_2
MAL_HOST = 192.168.44.111
MAL_PORT = 61142
MAL_INST_PORT = 5236
MAL_INST_HOST = 192.168.44.111
MAL_DW_PORT = 52142
MAL_INST_DW_PORT = 33142

6.3配置 dmarch.ini

[CHIVE_REALTIME]
ARCH_TYPE = REALTIME 
ARCH_DEST = GRP_SP_1
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /home/dmdba/dmdbms/data/arch_file 
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0

6.4配置dmwatcher.ini文件

[GRP_SP]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60 
INST_ERROR_TIME = 10
INST_OGUID = 453332
INST_INI = /home/dmdba/dmdbms/data/GRP_SP_2/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /home/dmdba/dmdbms/bin/dmserver
RLOG_SEND_THRESHOLD = 0
RLOG_APPLY_THRESHOLD = 0

6.5启动主库

以 Mount 方式启动主库
./dmserver /dm/data/DAMENG/dm.ini mount

6.6设置 OGUID、修改数据库模式

启动命令行工具 disql

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

7. 配置监视器

创建dmmonitor.ini文件,内容如下:

MON_DW_CONFIRM = 1
MON_LOG_PATH = /home/dmdba/dmdbms/mon_log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
MON_LOG_SPACE_LIMIT = 0
[GRP_SP]
MON_INST_OGUID = 453332
MON_DW_IP = 192.168.44.112:52141
MON_DW_IP = 192.168.44.111:52142

8. 启动守护进程

主库 ./dmwatcher /home/dmdba/dmdbms/data/GRP_SP_1/dmwatcher.ini
备库 ./dmwatcher /home/dmdba/dmdbms/data/GRP_SP_2/dmwatcher.ini

9. 启动监视器

./dmmonitor /home/dmdba/dmdbms/data/GRP_SP_2/dmmonitor.ini
image

10. 测试

主库插入数据

./disql SYSDBA/SYSDBA
SQL> create table t1(id int,name varchar2(10));
SQL> insert into t1 values(1,'cyj');
SQL> commit;
SQL> exit

备库查询

./disql SYSDBA/SYSDBA
SQL> select * from t1;

image
备库查询到数据说明配置正常。

posted @ 2021-03-19 14:24  疑怪昨宵春梦好  阅读(480)  评论(0)    收藏  举报