RMAN备份与恢复—恢复归档日志、控制文件、参数文件

来源:互联网 发布:宁波每日成交数据 编辑:程序博客网 时间:2024/04/23 21:03

恢复归档日志(会恢复到归档日志所在目录,有初始化参数log_archive_dest_1决定。)

[sql] view plaincopyprint?
  1. RMAN> list backup of archivelog all;  
  2.   
  3. 备份集列表  
  4. ===================  
  5.   
  6. BS 关键字  大小       设备类型占用时间 完成时间    
  7. ------- ---------- ----------- ------------ ----------  
  8. 13      16.94M     DISK        00:00:04     11-10月-11  
  9.         BP 关键字: 12   状态: AVAILABLE  已压缩: YES  标记: TAG20111011T193522  
  10. 段名:/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193522_798bhvwh_.bkp  
  11.   
  12.   备份集 13 中的已存档日志列表  
  13.   线程序列     低 SCN    时间下限   下一个 SCN   下一次  
  14.   ---- ------- ---------- ---------- ---------- ---------  
  15.   1    2       469822     09-10月-11 474560     10-10月-11  
  16.   1    3       474560     10-10月-11 474563     10-10月-11  
  17.   1    4       474563     10-10月-11 474566     10-10月-11  
  18.   1    5       474566     10-10月-11 474569     10-10月-11  
  19.   1    6       474569     10-10月-11 474571     10-10月-11  
  20.   1    7       474571     10-10月-11 474573     10-10月-11  
  21.   1    8       474573     10-10月-11 474575     10-10月-11  
  22.   1    9       474575     10-10月-11 474577     10-10月-11  
  23.   1    10      474577     10-10月-11 474579     10-10月-11  
  24.   1    11      474579     10-10月-11 474581     10-10月-11  
  25.   1    12      474581     10-10月-11 474583     10-10月-11  
  26.   1    13      474583     10-10月-11 474585     10-10月-11  
  27.   1    14      474585     10-10月-11 485487     10-10月-11  
  28.   1    15      485487     10-10月-11 494945     11-10月-11  
  29.   1    16      494945     11-10月-11 495088     11-10月-11  
  30.   1    17      495088     11-10月-11 495267     11-10月-11  
  31.   
  32. BS 关键字  大小       设备类型占用时间 完成时间    
  33. ------- ---------- ----------- ------------ ----------  
  34. 16      2.50K      DISK        00:00:01     11-10月-11  
  35.         BP 关键字: 15   状态: AVAILABLE  已压缩: YES  标记: TAG20111011T193554  
  36. 段名:/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193554_798bjv74_.bkp  
  37.   
  38.   备份集 16 中的已存档日志列表  
  39.   线程序列     低 SCN    时间下限   下一个 SCN   下一次  
  40.   ---- ------- ---------- ---------- ---------- ---------  
  41.   1    18      495267     11-10月-11 495283     11-10月-11  
  42.   
  43. RMAN> restore archivelog sequence between 1 and 18;  
  44.   
  45. 启动 restore 于 11-10月-11  
  46. 使用通道 ORA_DISK_1  
  47.   
  48. 通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复  
  49. 通道 ORA_DISK_1: 正在恢复存档日志  
  50. 存档日志线程 =1 序列=2  
  51. 通道 ORA_DISK_1: 正在恢复存档日志  
  52. 存档日志线程 =1 序列=3  
  53. 通道 ORA_DISK_1: 正在恢复存档日志  
  54. 存档日志线程 =1 序列=4  
  55. 通道 ORA_DISK_1: 正在恢复存档日志  
  56. 存档日志线程 =1 序列=5  
  57. 通道 ORA_DISK_1: 正在恢复存档日志  
  58. 存档日志线程 =1 序列=6  
  59. 通道 ORA_DISK_1: 正在恢复存档日志  
  60. 存档日志线程 =1 序列=7  
  61. 通道 ORA_DISK_1: 正在恢复存档日志  
  62. 存档日志线程 =1 序列=8  
  63. 通道 ORA_DISK_1: 正在恢复存档日志  
  64. 存档日志线程 =1 序列=9  
  65. 通道 ORA_DISK_1: 正在恢复存档日志  
  66. 存档日志线程 =1 序列=10  
  67. 通道 ORA_DISK_1: 正在恢复存档日志  
  68. 存档日志线程 =1 序列=11  
  69. 通道 ORA_DISK_1: 正在恢复存档日志  
  70. 存档日志线程 =1 序列=12  
  71. 通道 ORA_DISK_1: 正在恢复存档日志  
  72. 存档日志线程 =1 序列=13  
  73. 通道 ORA_DISK_1: 正在恢复存档日志  
  74. 存档日志线程 =1 序列=14  
  75. 通道 ORA_DISK_1: 正在恢复存档日志  
  76. 存档日志线程 =1 序列=15  
  77. 通道 ORA_DISK_1: 正在恢复存档日志  
  78. 存档日志线程 =1 序列=16  
  79. 通道 ORA_DISK_1: 正在恢复存档日志  
  80. 存档日志线程 =1 序列=17  
  81. 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193522_798bhvwh_.bkp  
  82. 通道 ORA_DISK_1: 已还原备份片段 1  
  83. 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193522_798bhvwh_.bkp 标记 = TAG20111011T193522  
  84. 通道 ORA_DISK_1: 还原完成, 用时: 00:00:23  
  85. 通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复  
  86. 通道 ORA_DISK_1: 正在恢复存档日志  
  87. 存档日志线程 =1 序列=18  
  88. 通道 ORA_DISK_1: 正在读取备份片段 /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193554_798bjv74_.bkp  
  89. 通道 ORA_DISK_1: 已还原备份片段 1  
  90. 段句柄 = /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_11/o1_mf_annnn_TAG20111011T193554_798bjv74_.bkp 标记 = TAG20111011T193554  
  91. 通道 ORA_DISK_1: 还原完成, 用时: 00:00:01  
  92. 完成 restore 于 11-10月-11  


恢复控制文件

[sql] view plaincopyprint?
  1. SQL> conn /as sysdba  
  2. 已连接。  
  3. SQL> shutdown immediate  
  4. 数据库已经关闭。  
  5. 已经卸载数据库。  
  6. ORACLE 例程已经关闭。  
  7. SQL> ! rm -rf /u01/app/oracle/oradata/orcl/*.ctl  
[sql] view plaincopyprint?
  1. [oracle@linux ~]$ rman target /  
  2.   
  3. 恢复管理器: Release 10.2.0.4.0 - Production on 星期三 10月 12 12:16:27 2011  
  4.   
  5. Copyright (c) 1982, 2007, Oracle.  All rights reserved.  
  6.   
  7. 已连接到目标数据库 (未启动)  
  8.   
  9. RMAN> set DBID=1292118315;  
  10. --DBID在alert日志里面有,进入rman的时候可以看见,查询v$database也可以有。  
  11.    
  12. 正在执行命令: SET DBID  
  13.   
  14. RMAN> startup nomount  
  15.   
  16. Oracle 实例已启动  
  17.   
  18. 系统全局区域总计     167772160 字节  
  19.   
  20. Fixed Size                     1266392 字节  
  21. Variable Size                 62917928 字节  
  22. Database Buffers             100663296 字节  
  23. Redo Buffers                   2924544 字节  
  24.   
  25. RMAN> restore controlfile from autobackup;  
  26.   
  27. 启动 restore 于 12-10月-11  
  28. 使用目标数据库控制文件替代恢复目录  
  29. 分配的通道: ORA_DISK_1  
  30. 通道 ORA_DISK_1: sid=156 devtype=DISK  
  31.   
  32. 恢复区目标: /u01/app/oracle/flash_recovery_area  
  33. 用于搜索的数据库名 (或数据库的唯一名称): ORCL  
  34. 通道 ORA_DISK_1: 在恢复区域中找到自动备份  
  35. 通道 ORA_DISK_1: 已找到的自动备份: /u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_12/o1_mf_s_764338456_79b50rd0_.bkp  
  36. 通道 ORA_DISK_1: 从自动备份复原控制文件已完成  
  37. 输出文件名=/u01/app/oracle/oradata/orcl/control01.ctl  
  38. 输出文件名=/u01/app/oracle/oradata/orcl/control02.ctl  
  39. 输出文件名=/u01/app/oracle/oradata/orcl/control03.ctl  
  40. 完成 restore 于 12-10月-11  
  41.   
  42. RMAN> alter database mount;  
  43.   
  44. 数据库已装载  
  45. 释放的通道: ORA_DISK_1  
  46.   
  47. RMAN> recover database;  
  48. --在做恢复的过程中,数据库恢复多次往往就出些莫名其妙的错误,重新建库,重新操作一遍就又正常完成。  
  49. --可见在数据库恢复之后,重新建库导出、导入是有道理的。  
  50.   
  51. 启动 recover 于 12-10月-11  
  52. 启动 implicit crosscheck backup 于 12-10月-11  
  53. 分配的通道: ORA_DISK_1  
  54. 通道 ORA_DISK_1: sid=156 devtype=DISK  
  55. 已交叉检验的 12 对象  
  56. 完成 implicit crosscheck backup 于 12-10月-11  
  57.   
  58. 启动 implicit crosscheck copy 于 12-10月-11  
  59. 使用通道 ORA_DISK_1  
  60. 完成 implicit crosscheck copy 于 12-10月-11  
  61.   
  62. 搜索恢复区中的所有文件  
  63. 正在编制文件目录...  
  64. 目录编制完毕  
  65.   
  66. 已列入目录的文件的列表  
  67. =======================  
  68. 文件名: /u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_12/o1_mf_s_764338456_79b50rd0_.bkp  
  69.   
  70. 使用通道 ORA_DISK_1  
  71.   
  72. 正在开始介质的恢复  
  73.   
  74. 存档日志线程 1 序列 10 已作为文件 /u01/app/oracle/oradata/orcl/redo01.log 存在于磁盘上  
  75. 存档日志文件名 =/u01/app/oracle/oradata/orcl/redo01.log 线程 =1 序列 =10  
  76. 介质恢复完成, 用时: 00:00:03  
  77. 完成 recover 于 12-10月-11  
  78.   
  79. RMAN> alter database open resetlogs;  
  80.   
  81. 数据库已打开  


恢复到指定目录

[sql] view plaincopyprint?
  1. RMAN> restore controlfile to '/u01/app/oracle/control01.ctl' from autobackup;  
  2.   
  3. 启动 restore 于 11-10月-11  
  4. 使用通道 ORA_DISK_1  
  5.   
  6. 恢复区目标: /u01/app/oracle/flash_recovery_area  
  7. 用于搜索的数据库名 (或数据库的唯一名称): ORCL  
  8. 通道 ORA_DISK_1: 在恢复区域中找到自动备份  
  9. 通道 ORA_DISK_1: 已找到的自动备份: /u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_11/o1_mf_s_764280385_798db1tq_.bkp  
  10. 通道 ORA_DISK_1: 从自动备份复原控制文件已完成  
  11. 完成 restore 于 11-10月-11  


恢复参数文件

[sql] view plaincopyprint?
  1. RMAN> shutdown immediate  
  2.   
  3. 数据库已关闭  
  4. 数据库已卸装  
  5. Oracle 实例已关闭  
  6.   
  7. RMAN> host;  
  8.   
  9. [oracle@linux ~]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs/  
  10. [oracle@linux dbs]$ mv spfileorcl.ora spfileorcl.ora.bak  
[sql] view plaincopyprint?
  1. [oracle@linux dbs]$ rman target /  
  2.   
  3. 恢复管理器: Release 10.2.0.4.0 - Production on 星期三 10月 12 12:24:24 2011  
  4.   
  5. Copyright (c) 1982, 2007, Oracle.  All rights reserved.  
  6.   
  7. 已连接到目标数据库 (未启动)  
  8.   
  9. RMAN> set DBID=1292118315;  
  10. --在rman里面没有初始化参数文件也可以nomunt数据库,是启动的rman默认的一个实例。  
  11.                             
  12. 正在执行命令: SET DBID  
  13.   
  14. RMAN> startup nomount;  
  15.   
  16. 启动失败: ORA-01078: failure in processing system parameters  
  17. LRM-00109: ???????????????? '/u01/app/oracle/product/10.2.0/db_1/dbs/initorcl.ora'  
  18.   
  19. 在没有参数文件的情况下启动 Oracle 实例以检索 spfile  
  20. Oracle 实例已启动  
  21.   
  22. 系统全局区域总计     159383552 字节  
  23.   
  24. Fixed Size                     1266344 字节  
  25. Variable Size                 54529368 字节  
  26. Database Buffers             100663296 字节  
  27. Redo Buffers                   2924544 字节  
  28.   
  29. RMAN> restore spfile from autobackup;  
  30. --由于我手动的备份的spfile和controlfile,这里autobackup倒还找不到了,可见使用rman的时候参数文件和控制文件还是让它自动备份好拉。  
  31.   
  32. 启动 restore 于 12-10月-11  
  33. 使用目标数据库控制文件替代恢复目录  
  34. 分配的通道: ORA_DISK_1  
  35. 通道 ORA_DISK_1: sid=36 devtype=DISK  
  36.   
  37. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111012  
  38. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111011  
  39. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111010  
  40. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111009  
  41. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111008  
  42. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111007  
  43. 通道 ORA_DISK_1: 寻找以下日期的自动备份: 20111006  
  44. 通道 ORA_DISK_1: 没有找到 7 天之内的自动备份  
  45. MAN-00571: ===========================================================  
  46. RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============  
  47. RMAN-00571: ===========================================================  
  48. RMAN-03002: restore 命令 (在 10/12/2011 12:26:10 上) 失败  
  49. RMAN-06172: 没有找到自动备份或指定的句柄不是有效副本或片段  
  50.   
  51. RMAN> list backup of spfile;  
  52.   
  53. MAN-00571: ===========================================================  
  54. RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============  
  55. RMAN-00571: ===========================================================  
  56. RMAN-03002: list 命令 (在 10/12/2011 12:26:47 上) 失败  
  57. ORA-01507: 未装载数据库  
  58.   
  59. RMAN> restore spfile from '/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_nnsnf_TAG20111012T121404_79b50dgv_.bkp';  
  60. --由于有很多个备份集,这里是一个一个试出来的。  
  61.   
  62. 启动 restore 于 12-10月-11  
  63. 使用通道 ORA_DISK_1  
  64.   
  65. 通道 ORA_DISK_1: 已找到的自动备份: /u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_12/o1_mf_nnsnf_TAG20111012T121404_79b50dgv_.bkp  
  66. 通道 ORA_DISK_1: 从自动备份复原 SPFILE 已完成  
  67. 完成 restore 于 12-10月-11  
  68.   
  69. RMAN> alter database mount;  
  70.   
  71. MAN-00571: ===========================================================  
  72. RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============  
  73. RMAN-00571: ===========================================================  
  74. RMAN-03002: alter db 命令 (在 10/12/2011 12:32:29 上) 失败  
  75. ORA-00205: 标识控制文件时出错, 有关详细信息, 请查看预警日志  
  76.   
  77. RMAN> shutdown immediate  
  78.   
  79. Oracle 实例已关闭  
  80.   
  81. RMAN> startup  
  82.   
  83. 已连接到目标数据库 (未启动)  
  84. Oracle 实例已启动  
  85. 数据库已装载  
  86. 数据库已打开  
  87.   
  88. 系统全局区域总计     167772160 字节  
  89.   
  90. Fixed Size                     1266392 字节  
  91. Variable Size                 62917928 字节  
  92. Database Buffers             100663296 字节  
  93. Redo Buffers                   2924544 字节  

0 0
原创粉丝点击