# 所有节点执行(root用户)
systemctl stop firewalld && systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
# 创建专用用户与目录
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba/dm -s /bin/bash dmdba
echo "dmdba123" | passwd --stdin dmdba
mkdir -p /dm8/{data,backup,arch} && chown -R dmdba:dinstall /dm8
# 主库(192.168.248.22)
cat > /etc/sysconfig/network-scripts/ifcfg-ens32 <<EOF
TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.248.22
NETMASK=255.255.255.0
GATEWAY=192.168.248.2
DNS1=192.168.248.2
ONBOOT=yes
EOF
# 备库(192.168.248.23)同理修改IP
# 主库执行
su - dmdba
/dm8/bin/dmserver /dm8/data/DAMENG/dm.ini
# 执行后输入exit退出控制台
/dm8/bin/dmrman
BACKUP DATABASE '/dm8/data/DAMENG/dm.ini' TO BACKUPSET '/dm8/backup/full'
# 备库执行
scp -r dmdba@192.168.248.22:/dm8/backup/full /dm8/backup/
/dm8/bin/dmrman
RESTORE DATABASE '/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup/full'
RECOVER DATABASE '/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup/full'
RECOVER DATABASE '/dm8/data/DAMENG/dm.ini' UPDATE DB_MAGIC
# 主库配置
INSTANCE_NAME = GRP1_RT_01
PORT_NUM = 5236
DW_INACTIVE_INTERVAL = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
# 备库配置
INSTANCE_NAME = GRP1_RT_02
PORT_NUM = 5237
[MAL_INST1]
MAL_INST_NAME = GRP1_RT_01
MAL_HOST = 192.168.248.22
MAL_PORT = 61141
MAL_INST_HOST = 192.168.248.22
MAL_INST_PORT = 5236
MAL_DW_PORT = 52141
[MAL_INST2]
MAL_INST_NAME = GRP1_RT_02
MAL_HOST = 192.168.248.23
MAL_PORT = 61142
MAL_INST_HOST = 192.168.248.23
MAL_INST_PORT = 5237
MAL_DW_PORT = 52142
# 主库配置
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = GRP1_RT_02
# 备库配置
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = GRP1_RT_01
# 公共配置
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 2048
ARCH_SPACE_LIMIT = 0
[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
# 主库执行
/dm8/bin/dmserver /dm8/data/DAMENG/dm.ini mount
# 备库执行
/dm8/bin/dmserver /dm8/data/DAMENG/dm.ini mount
-- 主库执行
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(453331);
alter database primary;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
-- 备库执行
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
sp_set_oguid(453331);
alter database standby;
SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
# 主备库均执行(root用户)
/dm8/script/root/dm_service_installer.sh -t dmwatcher -p DW_GRP1 -i /dm8/data/DAMENG/dmwatcher.ini
# dmmonitor.ini
MON_DW_CONFIRM = 1
MON_LOG_PATH = /dm8/log
MON_LOG_INTERVAL = 60
MON_LOG_FILE_SIZE = 32
[GRP1]
MON_INST_OGUID = 453331
MON_DW_IP = 192.168.248.22:52141
MON_DW_IP = 192.168.248.23:52142
# 主备库启动守护进程
systemctl start DmWatcherServiceDW_GRP1
# 监视器节点启动
/dm8/bin/dmmonitor /dm8/data/DAMENG/dmmonitor.ini
-- 检查归档状态
SELECT ARCH_NAME, ARCH_TYPE, ARCH_DEST FROM V$DM_ARCH_INI;
-- 查看守护进程状态
SELECT * FROM V$DMWATCHER;
-- 验证OGUID一致性
SELECT OGUID FROM V$INSTANCE;
# 在监视器控制台执行
SWITCHOVER GRP1_RT_01
文章
阅读量
获赞