问题背景:
为实现容灾功能,业务要求单点的数据库需要做成adg主备架构,则可选结构只有maa,rac,adg。adg实现容灾效果,需要引入服务名黑科技,即单点asm架构,大佬为我们提供方案,进行记录整理
基本方案:
1、主添加
srvctl add service -d ora11gR2 -s prim_db -l PRIMARY -e SESSION -m BASIC -w 10 -z 10
2、备添加
srvctl add service -d ora11gR2 -s prim_db -l PRIMARY -e SESSION -m BASIC -w 10 -z 10
3、主启动
srvctl start service -d ora11gR2 -s prim_db
4、主添加
srvctl add service -d ora11gR2 -s stby_db -l PHYSICAL_STANDBY -e SESSION -m BASIC -w 10 -z 10
5、备添加
srvctl add service -d sby11gR2 -s stby_db -l PHYSICAL_STANDBY -e SESSION -m BASIC -w 10 -z 10
6、备启动
srvctl start service -d sby11gR2 -s stby_db
添加完该实例名后,监听文件配置中应在ip配置项添加主备ip,即
XXX =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 主xx.xx.xx.xx)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 备xx.xx.xx.xx)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XXX)
)
)
可实现服务名漂移容灾,但服务名启动需要手动显式启动
命令详解
srvctl add service -database db_unique_name -service service_name_list
[-pdb pluggable_database] [-eval]
[-preferred preferred_list] [-available available_list] [-failback {YES | NO}]
[-netnum network_number] [-tafpolicy {BASIC | NONE}]
[-edition edition_name]
[-role "[PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]"
[-policy {AUTOMATIC | MANUAL}] [-notification {TRUE | FALSE}]
[-clbgoal {SHORT | LONG}] [-failovertype {NONE|SESSION|SELECT|TRANSACTION|AUTO}]
[-rlbgoal {NONE | SERVICE_TIME | THROUGHPUT}] [-dtp {TRUE | FALSE}]
[-failovermethod {NONE | BASIC}] [-failoverretry failover_retries]
[-drain_timeout timeout] [-stopoption {NONE|IMMEDIATE|TRANSACTIONAL}]
[-failover_restore {NONE|LEVEL1|AUTO}] [-failoverdelay failover_delay]
[-sql_translation_profile sql_translation_profile]
[-global {TRUE | FALSE}] [-maxlag max_lag_time] [-commit_outcome {TRUE|FALSE}]
[-retention retention_time] [-replay_init_time replay_initiation_time]
[-session_state {STATIC|DYNAMIC|AUTO}] [-force] [-verbose]
查看服务信息
srvctl config service -d ### -s ###
标签:NONE,service,dg,db,xx,主备,切换,BASIC,srvctl From: https://blog.51cto.com/u_16082244/6317748