Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1973887
  • 博文数量: 424
  • 博客积分: 1291
  • 博客等级: 中尉
  • 技术积分: 2682
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-13 01:34
个人简介

linux oracle 网络安全 编程

文章分类

全部博文(424)

文章存档

2016年(22)

2015年(53)

2014年(57)

2013年(242)

2012年(50)

分类: Oracle

2013-01-22 18:55:10

原文地址:基于RMAN搭建physical standby DG 作者:wjlcn

1.在主库上生成pfile文件,并将pfile文件copy到从库

create pfile='/home/oracle/tmp/initwjldb20130121.ora' from spfile;



2.standby上创建相关的目录

mkdir -p /home/oracle/app/oracle/flash_recovery_area

mkdir -p /home/oracle/app/oracle/admin/wjldb/udump

cd /home/oracle/app/oracle/admin/wjldb/

mkdir adump  bdump  cdump  dpdump 

mkdir -p /home/oracle/oradata/wjldb/



3.将数据库启动到nomount

create spfile from pfile='/home/oracle/tmp/initwjldb20130121.ora';

startup nomount;



4.rman还原控制文件

rman target / 

restore controlfile from '/home/oracle/backup/wjldb/wjldb_CTL_20130116_11963_1.bak'



5.启动到mount

startup mount;



6.还原数据库

list backup;

restore database;

recover database;


如果rman显示expire时,可以用:

RMAN> crosscheck backup;

crosscheck backup后状态改为AVAILABLE.

至此,数据库文件已恢复。

(另外,在这步时配置好primarystandby上的tnsnames.ora,后面的配置需要用到)




7.primary 上重新创建控制文件,替换standby

alter database create standby controlfile as '/home/oracle/tmp/test0118/control01.ctl'



8.primary上设置参数

alter system set log_archive_config='DG_CONFIG=(wjldb,stdb1)' scope=both;

alter system set log_archive_dest_4='SERVICE=stdb1 VALID_FOR=(ONLINE_LOGFILES, PRIMARY_ROLE) DB_UNIQUE_NAME=stdb1 REOPEN=60 lgwr async' scope=both;



9.standby 上设置

*.db_unique_name='stdb1'

*.fal_client='stdb1'

*.fal_server='wjldb'

*.local_listener='stdb1'

*.log_archive_config='DG_CONFIG=(wjldb,stdb1)'

*.log_archive_dest_1='LOCATION=/home/oracle/app/oracle/archivelog/wjldb VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=stdb1 REOPEN=30'

*.log_archive_dest_2='SERVICE=wjldb VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=wjldb REOPEN=60 lgwr async'

*.standby_file_management='AUTO'

*.undo_management='AUTO'

*.log_file_name_convert='/home/oracle/oradata/wjldb/','/home/oracle/oradata/wjldb/'  # 虽然目录可能相同,但最好加上这个参数。




10.primary 中的密码文件orapwwjldb copystandby



11.standby启动到mount

create pfile='/home/oracle/tmp/initwjldb20130121.ora' from spfile;

startup nomount;

alter database mount standby database;



12.standby上添加standby log

ALTER DATABASE ADD STANDBY LOGFILE ('/home/oracle/oradata/wjldb/std_redo4.log') SIZE 50M reuse;

ALTER DATABASE ADD STANDBY LOGFILE ('/home/oracle/oradata/wjldb/std_redo5.log') SIZE 50M reuse;

ALTER DATABASE ADD STANDBY LOGFILE ('/home/oracle/oradata/wjldb/std_redo6.log') SIZE 50M reuse;

ALTER DATABASE ADD STANDBY LOGFILE ('/home/oracle/oradata/wjldb/std_redo7.log') SIZE 50M reuse;



13.启动到日志应用

alter database recover managed standby database disconnect from session; 




阅读(741) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~