文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle 12cR1 rac怎么恢复到单机文件系统测试

2024-04-02 19:55

关注

这篇文章给大家介绍Oracle 12cR1 rac怎么恢复到单机文件系统测试,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

对从12cR1 RAC到单机文件系统的还原做个简单的示例。
1、参数文件的修改

  1. SQL> create pfile='/home/oracle/init.ora' from spfile;

通过上述命令转储pfile出来进行参数的修改。

2、将备份出的控制文件在单机上进行还原

  1. RMAN> restore controlfile from '/recovert_area/tmp/controlfile_db_p5sb7rbl_1_1.bak;

3、还原数据库
将备份集放入recovery_area/bak/目录下,执行以下命令:

  1. RMAN> catalog start with '/recovery_area/bak/';

这里的数据文件文件和临时文件的路径需要更改下,因为是还原到文件系统,这里给出示例脚本没有给出最终的数据文件名称,所以只供参考:

  1. select 'set newname for tempfile '||file#|| ' to ''/ora12c/oradata/cdb/'';' from v$tempfile where con_id=1;

  2. select 'set newname for tempfile '||file#|| ' to ''/ora12c/oradata/seed/'';' from v$tempfile where con_id=2;

  3. select 'set newname for tempfile '||file#|| ' to ''/ora12c/oradata/pdb/pdb1/'';' from v$tempfile where con_id=3;

  4. select 'set newname for datafile '||file#|| ' to ''/ora12c/oradata/cdb/'';' from v$datafile where con_id=1;

  5. select 'set newname for datafile '||file#|| ' to ''/ora12c/oradata/seed/'';' from v$datafile where con_id=2;

  6. select 'set newname for datafile '||file#|| ' to ''/ora12c/oradata/pdb/pdb1/'';' from v$datafile where con_id=3;

下面给出还原的脚本,供参考

  1. run

  2. {

  3. set newname for datafile 1 to '/ora12c/oradata/cdb/system01.dbf';

  4. set newname for datafile 3 to '/ora12c/oradata/cdb/sysaux01.dbf';

  5. set newname for datafile 4 to '/ora12c/oradata/cdb/undotbs01.dbf';

  6. set newname for datafile 6 to '/ora12c/oradata/cdb/users01.dbf';

  7. set newname for datafile 8 to '/ora12c/oradata/cdb/undotbs02.dbf';

  8. set newname for datafile 9 to '/ora12c/oradata/cdb/undotbs03.dbf';

  9. set newname for datafile 5 to '/ora12c/oradata/seed/system01.dbf';

  10. set newname for datafile 7 to '/ora12c/oradata/seed/sysaux01.dbf';

  11. set newname for datafile 10 to '/ora12c/oradata/pdb/pdb1/clsprm_system.dbf';

  12. set newname for datafile 11 to '/ora12c/oradata/pdb/pdb1/clsprm_sysaux.dbf';

  13. set newname for datafile 12 to '/ora12c/oradata/pdb/pdb1/clsprm_users01.dbf';

  14. set newname for datafile 14 to '/ora12c/oradata/pdb/pdb1/test2_01.dbf';

  15. set newname for datafile 16 to '/ora12c/oradata/pdb/pdb1/test021.dbf';

  16. set newname for tempfile 1 to '/ora12c/oradata/cdb/temp01.dbf';

  17. set newname for tempfile 2 to '/ora12c/oradata/seed/temp01.dbf';

  18. set newname for tempfile 3 to '/ora12c/oradata/pdb/pdb1/temp01.dbf';

  19. restore database;

  20. switch datafile all;

  21. switch tempfile all;

  22. }

4、恢复数据库
这里做不完全恢复。

RMAN> list backup of database;
省略部分。。。。。
 File LV Type Ckp SCN    Ckp Time  Name
  ---- -- ---- ---------- --------- ----
  1       Full 40189418   06-AUG-17 /ora12c/oradata/cdb/system01.dbf
  3       Full 40189418   06-AUG-17 /ora12c/oradata/cdb/sysaux01.dbf
  4       Full 40189418   06-AUG-17 /ora12c/oradata/cdb/undotbs01.dbf
  6       Full 40189418   06-AUG-17 /ora12c/oradata/cdb/users01.dbf
省略部分。。。。。
==》通过上述部分可以看到Ckp SCN 为40189418、

RMAN>  list backup of archivelog all;
省略部分。。。
  Thrd Seq     Low SCN    Low Time  Next SCN   Next Time
  ---- ------- ---------- --------- ---------- ---------
  1    664     40186320   06-AUG-17 40188631   06-AUG-17
  1    665     40188631   06-AUG-17 40190128   06-AUG-17
  2    634     40186323   06-AUG-17 40188634   06-AUG-17
  2    635     40188634   06-AUG-17 40190122   06-AUG-17
  3    582     40186334   06-AUG-17 40188628   06-AUG-17
  3    583     40188628   06-AUG-17 40190125   06-AUG-17
省略部分。。。
==》通过对归档的Low SCN和Next SCN以及Ckp SCN 的分析,确认恢复到scn号为40190122。

以下给出恢复的脚本,供参考

  1. run {

  2. set archivelog destination to '/recovery_area/tmp/';

  3. recover database until scn 40190122;

  4. }

5、打开数据库

  1. RMAN> alter database open resetlogs;

如果打不开,要求介质恢复,可以继续追加归档日志进行恢复。

6、删除多余的日志组和undo表空间
(1)清理日志组

  1. SELECT b.member, a.group#,thread#, a.status

  2. FROM v$log a, v$logfile b

  3. WHERE a.group# = b.group#

  4. ORDER BY a.thread#,b.group#;


  5. MEMBER GROUP# THREAD# STATUS

  6. ------------------------------ ---------- ---------- -------------

  7. +CDB/cdb/redo01.log 1          1 CURRENT

  8. +CDB/cdb/redo02.log 2          1 UNUSED

  9. +CDB/cdb/redo03.log 3          2 INACTIVE

  10. +CDB/cdb/redo04.log 4          2 UNUSED

  11. +CDB/cdb/redo05.log 5          3 INACTIVE

  12. +CDB/cdb/redo06.log 6          3 UNUSED 

==》这里删除组3,4,5,6

  1. SQL> alter database disable thread 2;

  2. Database altered.

  3. SQL> alter database disable thread 3;

  4. Database altered.

  5. SQL> alter database drop logfile group 3;

  6. Database altered.

  7. SQL> alter database drop logfile group 4;

  8. Database altered.

  9. SQL> alter database drop logfile group 5;

  10. Database altered.

  11. SQL> alter database drop logfile group 6;

  12. Database altered.

(2)清理unod表空间

  1. SQL> select name from v$tablespace where name like 'UNDO%';

  2. NAME

  3. -------------------------

  4. UNDOTBS1

  5. UNDOTBS2

  6. UNDOTBS3

==》通过show parameter undo_tablespace 命令确认要保留的undo,这里删除UNDOTBS2和UNDOTBS3表空间

  1. SQL> drop tablespace UNDOTBS2 including contents and datafiles;

  2. Tablespace dropped.

  3. SQL> drop tablespace UNDOTBS3 including contents and datafiles;

  4. Tablespace dropped.

关于Oracle 12cR1 rac怎么恢复到单机文件系统测试就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯