坚者如磐石虽岁月交替而不移 忍者如柔练虽困苦艰辛而不摧 坚忍者刚柔相济百折不回 持之以恒也

重建dataguard

上一篇 / 下一篇  2008-02-21 09:38:02 / 个人分类:高应用性

前些日子在做维护时由于磁盘空间太满,一下子删除过多的归档.导致将未applied日志一并删除.造成standby与primary无法同步.结果只能重建standby.在论坛里参考各位高人的意见,总的有两种方法可以进行重建:1、利用rman重建.2、常规建法.考虑到自身磁盘空间的问题:无法容下一个rman备份集和及其恢复出的数据文件,故利用后者方法重建.前者方法有人说可以一个数据文件一个数据文件实现,还没测试过.后续有机会一并贴上.

详细步骤:

1.在primary生成standby的控制文件.

[oracle@q1wip01 ~]$sqlplus "sys/as sysdba"
SQL>select name from v$datafile;  (获得下步创建standby控制文件存放的路径)
SQL>alter database create standby controlfile as '/.../.../stdcotrl.ctl';

SQL>SHOW PARAMETER spfile;     (如果结果value列返回空值,那么说明你在使用pfile)
SQL>create pfile from spfile;
SQL>!
[oracle@q1wip01 ~]$cd $ORACLE_HOME/dbs
[oracle@q1wip01 ~]$ls            (可以看到standby需要的pfile及口令文件)

2.删除现有standby中的所有.dbf数据文件.

3.ftp primary中的所有.dbf数据文件及1生成的控制文件.

cd /q1wip01/oradata
ftp 10.70.0.3
bin
cd /q1wip01/oradata
mput *.dbf
put stdcotrl.ctl
bye

oracle用户登入10.70.0.3

cd /q1wip01/oradata
复制stdcotrl.ctl成三个crontrol.ctl


4.启动standby.
SQL>startup nomount
SQL>alter database mount standby database;
SQL>alter database recover managed standby database disconnect from session;

5.测试standby是否成功.
在主库上
SQL>alter system switch logfile;
在从库上
SQL>select sequence#,applied from v$archived_log;


TAG:

haorman 引用 删除 zuohao_lu   /   2008-04-29 08:20:12
在线重建还没试验过。不好意思……
引用 删除 phil   /   2008-04-25 09:21:31
你这个应该是离线作业吧。有没有试过在线重建呢?
引用 删除 phil   /   2008-04-25 09:18:35
写得不错呀。
引用 删除 Guest   /   2008-04-25 09:18:20
3
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-14  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 2527
  • 日志数: 47
  • 建立时间: 2008-01-19
  • 更新时间: 2008-09-25

RSS订阅

Open Toolbar