Oracle11g备份与恢复-手工备份与恢复

第二章 手工备份与恢复

 一)常用命令

  1.备份和还原都会用到os命令,linux---cp

  2.恢复:recover

  二)备份前检查

  1.检查需要备份的数据文件

SQL>col NAME FOR A100-----调整列显示长度

  SQL>select name from v$datafile;----查看数据文件

         

Oracle11g备份与恢复-手工备份与恢复

SQL> select file_id,file_name,tablespace_name from dba_data_files;

           dba_data_files-----数据库数据文件信息表

  

Oracle11g备份与恢复-手工备份与恢复

Oracle11g备份与恢复-手工备份与恢复

  2)检查要备份的控制文件

  SQL> select name from v$controlfile;

Oracle11g备份与恢复-手工备份与恢复

  3)在线redo日志可以不做备份

    如果是在线备份,肯定是归档模式
      1、在线日志里面的内容,最后都会到归档日志里面的。所以只要备份归档日志就OK了。
      2、所以,RMAN也不提供备份和RESTORE在线日志的命令。
       如果是数据库关闭后备份,又是非归档模式的,没有干净shutdown的话,倒是应该备份在线日志的。

 三)dbv检查坏块

  在手工备份前,需要检查datafile是否存在坏块,在备份完成后也要对备份进行检查。

  对某一个datafile进行坏块检查

  1.没有参数,简单检查

    

Oracle11g备份与恢复-手工备份与恢复

  2.带有参数

    

Oracle11g备份与恢复-手工备份与恢复

    LOGFILE---可以指定输出日志,使用edit进行查看(ed 输出日志名)

 四)冷备份的注意事项

   1)必须要将数据库关闭干净,以保证数据的一致性;

     SQL>shutdown immediate;

     2)在os下必须备份所有的数据文件(完整备份)

     3)在os下必须备份控制文件(至少备份一个)

     4)非归档备份还原策略

        恢复时还原所有的备份,重建所有在线日志,没有recover步骤

   SQL>startup mount

     SQL>alter database clear unarchived logfile group n;n为所有在线日志组)查看有几个日志组select * from v$log;

     SQL>alter database open;

 五)手工非一致性备份(热备份)

  1)在备份之前需要进入热备模式,备份后要结束热备模式

    执行begin backup设置备份模式(在数据文件上生成检查点,写入scn,将来恢复的时候以这个写入的scn为起点)

    对只读的表空间不能做热备份,临时表空间不需要进行备份,特别强调:NOARCHIVE模式下不支持手工热备

    对整个数据库设置热备模式:alter database begin backup;

    对整个数据库结束热备模式:alter database end backup;

    对单个表空间设置热备模式:alter tablespace users begin backup;

    对单个表空间结束热备模式:alter tablespace users end backup;

  2)手工热备利用v$backup监控

    例子:首先创建名为test_space的表空间以及名为test_user的用户,并将test_user用户的表空间指向test_space,之后将表空间test_space进行备份。

    创建test_space表空间

    SQL> create tablespace test_space datafile \'/ora/oracle/oradata/orcl/test_space01.dbf\' size 100M autoextend on next 10M;

Oracle11g备份与恢复-手工备份与恢复

    查看创建的表空间

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgwxfy.html