【操作】ORACLE DATAGUARD重建备库

【操作】ORACLE DATAGUARD 重建备库

目的:

Oracle DataGuard环境中,一些情况下我们需要重建Standby DB,如主库执行flashback database,或某些archive log无法找回时。

环境:

Oracle Version:11.2

步骤:

1. 【备库】信息收集
SQL-Standby>
	set pagesize 0
	select name from v$datafile
	union
	select name from v$tempfile
	union
	select member from v$logfile
	union
	select name from v$controlfile;
2. 【备库】文件备份
SHELL-Standby>
	cd ${ORACLE_HOME}/dbs
	cp init${ORACLE_SID}.ora init${ORACLE_SID}.ora.`date +%Y%m%d`
	cp spfile${ORACLE_SID}.ora spfile${ORACLE_SID}.ora.`date +%Y%m%d`
	cp orapw${ORACLE_SID} orapw${ORACLE_SID}.`date +%Y%m%d`
3. 【备库】变更状态 - nomount
SQL-Standby>
	shutdown immediate
	startup nomount
4. 【主库】执行复制 - rman duplicate
SHELL-Primary>
	AUXDB="STANDBY-DB"
	SYSPW="xxxx"
	# 需要修改变量值
	rman target / auxiliary sys/${SYSPW}@${AUXDB}
	
RMAN-Primary>
	duplicate target database for standby from active database nofilenamecheck;
5. 【备库】 - 确认同步状态
SQL-Standby>
	alter database recover managed standby database using current logfile disconnect;
	select client_process,process, sequence#, status from v$managed_standby;

附注

  1. DataGuard 需要使用spfile,因为在dupliate过程中,实例需要修改db_name等参数;
  2. Standby DB需要启动到nomount状态,因为需要重建control file;
  3. Duplicate操作只负责复制数据库,Finished Duplicate Db之后,需要手动启动Standby DB的日志应用;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值