Chinaunix首页 | 论坛 | 博客
  • 博客访问: 91772493
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-03-31 12:53:14

来源:赛迪网    作者:Alice

问题:如何在不影响primary database的情况下将standby数据库打开?

解答:

1.首先需要关闭两台db之间的archive log传送:

1.1 登陆到primary,用system或sys用户登陆:

sql>alter system set log_archive_dest_2='';

1.2 传送最新的arch文件:

sql>alter system switch logfile;

2.登陆到standby database,用sys用户登陆:

sql>shutdown immediate;

sql>startup nomount

sql>alter database mount standby database;

sql>alter database backup controlfile to trace;

sql>shutdown immediate; -- 目的是为了打开trace文件

sql>exit

现在,我们需要在udump目录下找到刚才产生的trace文件,找到reset log部分。将相关创建control 文件的sql copy出来,并存成cre_ctl_.sql文件。

修改init.ora文件。可使用primary database的init文件,但要注意将log_archive_dest_2等与standby有关的参数进行修改。

sql>startup nomount pfile=init.ora;

sql>alter database mount standby database;

sql>@cre_ctl.sql

现在,我们已经创建了新的control文件。

sql>recover database using backup controlfile until cancel;

sql>alter database open resetlogs;

至此,standby 数据库正式打开。

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