读写分离主备搭建
1、dmdba用户初始化实例
/data/xswl/dm8/bin/dminit PATH=/data/xswl/dm8/data/ INSTANCE_NAME=DW1_01 PAGE_SIZE=32 LOG_SIZE=2048
2、dmdba用户启动服务
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/bin]$ /data/xswl/dm8/bin/dmserver /data/xswl/dm8/data/DAMENG/dm.ini
3、归档备份
4、修改实例配置dm.ini
#实例名,建议使用―组名_守护环境_序号‖的命名方式,总长度不能超过 16
INSTANCE_NAME = GRP1_RWW_01
PORT_NUM = 5236 #数据库实例监听端口
DW_INACTIVE_INTERVAL = 60 #接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态/OGUID
ENABLE_OFFLINE_TS = 2 #不允许备库 OFFLINE 表空间
MAL_INI = 1 #打开 MAL 系统
ARCH_INI = 1 #打开归档配置
RLOG_SEND_APPLY_MON = 64 #统计最近 64 次的日志发送信息
5、A机器配置MAL配置文件dmmal.ini,Redo日志归档文件dmarch.ini,守护进程配置文件dmwarcher.ini
MAL配置文件dmmal.ini
Redo日志归档文件dmarch.ini
守护进程配置文件dmwarcher.ini
5.1、dmdba拷贝实例
5.2、root用户注册服务
/data/xswl/dm8/script/root/dm_service_installer.sh -t dmserver -p GRP1_RWW_01 -dm_ini /data/xswl/dm8/data/DAMENG/dm.ini -m mount
/data/xswl/dm8/script/root/dm_service_installer.sh -t dmwatcher -p Watcher -watcher_ini /data/xswl/dm8/data/DAMENG/dmwatcher.ini
5.3启动数据库修改参数
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/data/DAMENG]$ /data/xswl/dm8/bin/DmServiceGRP1_RWW_01 start
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/bin]$ ./disql SYSDBA/SYSDBA@100.20.23.20:52361
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL>sp_set_oguid(453332);
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
/*设置为主库*/
SQL>alter database primary;
系统通过 OGUID值确定一个守护进程组,由用户保证 OGUID 值的唯一性,并确保数据守护系统中,数据库、守护进程和监视器配置相同的 OGUID 值。
5.4关闭服务
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/data/DAMENG]$ /data/xswl/dm8/bin/DmServiceGRP1_RWW_01 stop
6、B机器配置MAL配置文件dmmal.ini,Redo日志归档文件dmarch.ini,守护进程配置文件dmwarcher.ini
修改实例名:INSTANCE_NAME = GRP1_RWW_02
Redo日志归档文件dmarch.ini
其他配置基本保持不变
6.1、root用户注册服务
/data/xswl/dm8/script/root/dm_service_installer.sh -t dmserver -p GRP1_RWW_02 -dm_ini /data/xswl/dm8/data/DAMENG/dm.ini -m mount
/data/xswl/dm8/script/root/dm_service_installer.sh -t dmwatcher -p Watcher -watcher_ini /data/xswl/dm8/data/DAMENG/dmwatcher.ini
6.2、dmdba用户恢复数据
/data/xswl/dm8/bin/dmrman CTLSTMT="RESTORE DATABASE '/data/xswl/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/data/xswl/dm8/data/DAMENG/bak/BACKUP_FILE'"
/data/xswl/dm8/bin/dmrman CTLSTMT="RECOVER DATABASE '/data/xswl/dm8/data/DAMENG/dm.ini' FROM BACKUPSET '/data/xswl/dm8/data/DAMENG/bak/BACKUP_FILE'"
/data/xswl/dm8/bin/dmrman CTLSTMT="RECOVER DATABASE '/data/xswl/dm8/data/DAMENG/dm.ini' UPDATE DB_MAGIC
6.3启动服务修改配置
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/data/DAMENG]$ /data/xswl/dm8/bin/DmServiceGRP1_RWW_01 start
修改OGUID 值
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 1);
SQL>sp_set_oguid(453332);
/*设置为备库*/
SQL>alter database standby;
SQL>SP_SET_PARA_VALUE(1, 'ALTER_MODE_STATUS', 0);
7、配置监视器dmmonitor.ini,注册服务
7.1root用户注册服务
/dm8/script/root/dm_service_installer.sh -t dmmonitor -p Monitor -monitor_ini /dm8/bin/dmmonitor.ini
8、启动和停止
8.1启动
A机器启动服务
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/bin]$ /data/xswl/dm8/bin/DmServiceGRP1_RWW_01 start
[dmdba@ec2-100-20-23-20 /data/xswl/dm8/bin]$ /data/xswl/dm8/bin/DmWatcherServiceWatcher start
B机器启动服务
dmdba@ubuntu166:/data/xswl/dm8/bin$ /data/xswl/dm8/bin/DmServiceGRP1_RWW_02 start
dmdba@ubuntu166:/data/xswl/dm8/bin$ /data/xswl/dm8/bin/DmWatcherServiceWatcher start
8.2停止
停止:A/B 机器守护进程→A 机器 GRP1_RWW_01 主库→B 机器 GRP1_RWW_02 备库
A/B 机器:[dmdba@~]/data/xswl/dm8/bin/DmWatcherServiceWatcher stop
A 机器:[dmdba@~]/data/xswl/dm8/bin/DmServiceGRP1_RWW_01 stop
B 机器:[dmdba@~]/data/xswl/dm8/bin/DmServiceGRP1_RWW_02 stop
如果还有任何问题,欢迎到达梦在线服务平台提问!
社区 | 达梦在线服务平台https://eco.dameng.com