准备两台配置尽量相同的服务器,设置好各服务器的IP和端口、数据库名、实例名等。监视器可使用配置较低的服务器,且不用创建实例
打开主机(192.168.20.1),在dmrman中进行备份
[dmdba@kylin-training ~]$ cd /dm8/bin
[dmdba@kylin-training bin]$ ./dmrman
dmrman V8
RMAN> BACKUP DATABASE '/dm8/data/DAMENG/dm.ini' FULL TO BACKUP_FILE1 BACKUPSET '/dm8/backup'
RMAN> exit
进入已经过备份的文件夹,将备份文件拷贝至备机
[dmdba@kylin-training bin]$ cd /dm8/backup
[dmdba@kylin-training bin]$ scp -r . 192.168.20.2:/dm8/backup
打开备机(192.168.20.2),在dmrman中进行还原
[dmdba@kylin-training ~]$ cd /dm8/bin
[dmdba@kylin-training bin]$ ./dmrman
dmrman V8
RMAN> RESTORE DATABASE '/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup'
RMAN> RECOVER DATABASE '/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/dm8/backup'
RMAN> RECOVER DATABASE '/dm8/data/DAMENG/dm.ini' UPDATE DB_MAGIC
[dmdba@kylin-training ~]$ cd /dm8/data/DAMENG
[dmdba@kylin-training DAMENG]$ vi dm.ini
INSTANCE_NAME = DMSERVER
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
[dmdba@kylin-training DAMENG]$ vi dmmal.ini
MAL_CHECK_INTERVAL = 60
MAL_CONN_FAIL_INTERVAL = 60
[MAL_INST1]
MAL_INST_NAME = DMSERVER
MAL_HOST = 192.168.20.1
MAL_PORT = 55101
MAL_INST_HOST = 192.168.20.1
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMSERVER2
MAL_HOST = 192.168.20.2
MAL_PORT = 55121
MAL_INST_HOST = 192.168.20.2
MAL_INST_PORT = 5236
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121
[dmdba@kylin-training DAMENG]$ vi dmarch.ini
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER2 #目标实例名,这里指的是备机的实例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0
[dmdba@kylin-training DAMENG]$ vi dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 60
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 60
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
以mount方式启动主库
[dmdba@kylin-training bin]$ ./dmserver /dm8/data/DAMENG/dm.ini mount
[dmdba@kylin-training bin]$ ./disql SYSDBA/SYSDBA@192.168.20.1:5236
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);
设置完成后停止主库实例服务
[dmdba@kylin-training ~]$ cd /dm8/data/DAMENG
[dmdba@kylin-training DAMENG]$ vi dm.ini
INSTANCE_NAME = DMSERVER2
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
[dmdba@kylin-training DAMENG]$ vi dmmal.ini
MAL_CHECK_INTERVAL = 60
MAL_CONN_FAIL_INTERVAL = 60
[MAL_INST1]
MAL_INST_NAME = DMSERVER
MAL_HOST = 192.168.20.1
MAL_PORT = 55101
MAL_INST_HOST = 192.168.20.1
MAL_INST_PORT = 5236
MAL_DW_PORT = 65101
MAL_INST_DW_PORT = 45101
[MAL_INST2]
MAL_INST_NAME = DMSERVER2
MAL_HOST = 192.168.20.2
MAL_PORT = 55121
MAL_INST_HOST = 192.168.20.2
MAL_INST_PORT = 5236
MAL_DW_PORT = 65121
MAL_INST_DW_PORT = 45121
[dmdba@kylin-training DAMENG]$ vi dmarch.ini
[ARCHIVE_REALTIME]
ARCH_TYPE = REALTIME
ARCH_DEST = DMSERVER #目标实例名,这里指的是主机的实例名
[ARCHIVE_LOCAL1]
ARCH_TYPE = LOCAL
ARCH_DEST = /dm8/arch
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 0
[dmdba@kylin-training DAMENG]$ vi dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = MANUAL
DW_ERROR_TIME = 60
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 60
INST_OGUID = 453331
INST_INI = /dm8/data/DAMENG/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm8/bin/dmserver
RLOG_APPLY_THRESHOLD = 0
以mount方式启动备库
[dmdba@kylin-training bin]$ ./dmserver /dm8/data/DAMENG/dm.ini mount
[dmdba@kylin-training bin]$ ./disql SYSDBA/SYSDBA@192.168.20.2:5236
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@kylin-training bin]$ ./dmwatcher /dm8/data/DAMENG/dmwatcher.ini
然后启动备机的守护进程,使用备机输入一下命令
[dmdba@kylin-training bin]$ ./dmwatcher /dm8/data/DAMENG/dmwatcher.ini
[dmdba@kylin-training ~]$ cd /dm8/bin
[dmdba@kylin-training DAMENG]$ vi dmmonitor.ini
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 = 453331
MON_DW_IP = 192.168.20.1:65101
MON_DW_IP = 192.168.20.2:65121
[dmdba@kylin-training ~]$ cd /dm8/bin
[dmdba@kylin-training ~]$ ./dmmonitor /dm8/bin/dmmonitor.ini
看到图中监视器显示的各节点的状态即代表守护进程正常
并且可以在监视器中每隔一段时间输入“show”来查看各节点状态
考试过程中实时主备虽然搭建成功,但不够熟练,导致浪费了一些时间未能完成其它题目,特以此文巩固该模块的知识,谢谢观看。
文章
阅读量
获赞