注册
主备集群扩展备库节点
专栏/技术分享/ 文章详情 /

主备集群扩展备库节点

harrison辉 2025/09/19 82 0 0
摘要

1、创建扩展备库

##初始化扩展备库
[dmdba@localhost bin]$ ./dminit path=/data db_name=DW port_num=5237 
##正常启停数据库
[dmdba@localhost bin]$ ./dmserver /data/DW/dm.ini
exit

2、从源主库进行备份

[dmdba@localhost bin]$ ./disql SYSDBA/SYSDBA:5237
SQL> backup database full backupset '/home/dmdba/fullbak0603';
[dmdba@localhost bin]$ scp -r /home/dmdba/fullbak0603/ dmdba@192.168.10.10:/home/dmdba/

3、恢复扩展备库

RMAN> restore database '/data/DW/dm.ini' from backupset '/home/dmdba/fullbak0603';
RMAN> recover database '/data/DW/dm.ini' from backupset '/home/dmdba/fullbak0603';
RMAN>  recover database '/data/DW/dm.ini' update db_magic;

4、修改扩展备库配置文件
##dm.ini文件
[dmdba@localhost bin]$ vi /data/DW/dm.ini

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

##dmarch.ini文件
[dmdba@localhost bin]$ vi /data/DW/dmarch.ini

[ARCHIVE_LOCAL1]
ARCH_TYPE        = LOCAL            # 本地归档类型
ARCH_DEST        = /opt/hzq/dmdbms/arch     # 本地归档文件存放路径
ARCH_FILE_SIZE   = 128              # 单位MB, 本地单个归档文件最大值
ARCH_SPACE_LIMIT = 1024                 # 单位MB, 0表示无限制范围1024~2147483647M
[ARCHIVE_REALTIME1]
ARCH_TYPE = REALTIME          # 实时归档类型
ARCH_DEST = DW01              # 实时归档目标实例名, 对应备库的数据库实例名
[ARCHIVE_REALTIME2]
ARCH_TYPE = REALTIME          # 实时归档类型
ARCH_DEST = DW02              # 实时归档目标实例名, 对应备库的数据库实例名

##dmmal.ini文件

[dmdba@localhost bin]$ vi /data/DW/dmmal.ini 

MAL_CHECK_INTERVAL         = 10  #MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL     = 10  #判定MAL链路断开的时间
MAL_BUF_SIZE               = 512  #单个MAL缓存大小,单位MB
MAL_SYS_BUF_SIZE           = 2048  #MAL总大小限制,单位MB
MAL_COMPRESS_LEVEL         = 0  #MAL消息压缩等级,0表示不压缩

[MAL_INST1]
  MAL_INST_NAME            = DW01  #实例名,和 dm.ini的INSTANCE_NAME一致
  MAL_HOST                 = 192.168.10.100  #MAL系统监听TCP连接的IP地址
  MAL_PORT                 = 5336  #MAL系统监听TCP连接的端口
  MAL_INST_HOST            = 192.168.10.100   #实例的对外服务IP地址
  MAL_INST_PORT            = 5237  #实例对外服务端口,和dm.ini的PORT_NUM一致
  MAL_DW_PORT              = 5436  #实例对应的守护进程监听TCP连接的端口
  MAL_INST_DW_PORT         = 5536  #实例监听守护进程TCP连接的端口
[MAL_INST2]
  MAL_INST_NAME            = DW02
  MAL_HOST                 = 192.168.10.101
  MAL_PORT                 = 5336
  MAL_INST_HOST            = 192.168.10.101
  MAL_INST_PORT            = 5237
  MAL_DW_PORT              = 5436
  MAL_INST_DW_PORT         = 5536
[MAL_INST3]
  MAL_INST_NAME            = DW03
  MAL_HOST                 = 192.168.10.10
  MAL_PORT                 = 5336
  MAL_INST_HOST            = 192.168.10.10
  MAL_INST_PORT            = 5237
  MAL_DW_PORT              = 5436
  MAL_INST_DW_PORT         = 5536

##dmwatcher.ini文件

[dmdba@localhost bin]$ vi /data/DW/dmwatcher.ini
[GDW1]
  DW_TYPE                  = GLOBAL  #全局守护类型
  DW_MODE                  = MANUAL  #故障手动切换模式
  DW_ERROR_TIME            = 20  #远程守护进程故障认定时间
  INST_ERROR_TIME          = 20  #本地实例故障认定时间
  INST_RECOVER_TIME        = 60  #主库守护进程启动恢复的间隔时间
  INST_OGUID               = 45331  #守护系统唯一OGUID值
  INST_INI                 = /data/DW/dm.ini  #dm.ini文件路径
  INST_AUTO_RESTART        = 1  #打开实例的自动启动功能
  INST_STARTUP_CMD         = /opt/hzq/dmdbms/bin/DmServiceDW restart
  RLOG_SEND_THRESHOLD      = 0  #指定主库发送日志到备库的时间阈值,默认关闭
  RLOG_APPLY_THRESHOLD     = 0  #指定备库重演日志的时间阈值,默认关闭

5、启动扩展备库

Mount方式启动扩展备库
[dmdba@localhost bin]$ ./dmserver /data/DW/dm.ini mount
设置模式和oguid
SQL> SP_SET_PARA_VALUE(1,'ALTER_MODE_STATUS',1);
DMSQL 过程已成功完成
已用时间: 10.750(毫秒). 执行号:1.
SQL> sp_set_oguid(45331);
DMSQL 过程已成功完成
已用时间: 2.473(毫秒). 执行号:2.
SQL> alter database standby;
操作已执行
已用时间: 5.479(毫秒). 执行号:0.
SQL>  SP_SET_PARA_VALUE(1,'ALTER_MODE_STATUS',0);
DMSQL 过程已成功完成
已用时间: 9.089(毫秒). 执行号:3.
SQL> SELECT instance_name, host_name, status$, mode$, oguid FROM v$instance;

行号     INSTANCE_NAME HOST_NAME             STATUS$ MODE$   OGUID      
---------- ------------- --------------------- ------- ------- -----------
1          DW03          localhost.localdomain MOUNT   STANDBY 45331

6、动态修改源主备配置

登录原主备库节点添加新备库mal和归档信息
SQL> SF_MAL_CONFIG(1,0);
DMSQL 过程已成功完成
已用时间: 0.893(毫秒). 执行号:702.
SQL> SF_MAL_INST_ADD('MAL_INST3','DW03','192.168.10.10',5336,'192.168.10.10',5237,5436,0,5536);
DMSQL 过程已成功完成
已用时间: 0.822(毫秒). 执行号:703.
SQL> SF_MAL_CONFIG_APPLY();
DMSQL 过程已成功完成
已用时间: 0.650(毫秒). 执行号:704.
SQL> SF_MAL_CONFIG(0,0);
DMSQL 过程已成功完成
已用时间: 0.417(毫秒). 执行号:705.
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST=DW03, TYPE=REALTIME';
操作已执行
已用时间: 0.757(毫秒). 执行号:0.

7、启动watcher服务

三个节点均重启下watcher服务
[dmdba@localhost bin]$ ./DmWatcherServiceWatcher restart
监视器添加扩展备库节点后启动观察,扩展备库已加入数据库集群。
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服