Chinaunix首页 | 论坛 | 博客
  • 博客访问: 325940
  • 博文数量: 61
  • 博客积分: 1445
  • 博客等级: 上尉
  • 技术积分: 435
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-08 16:04
文章分类

全部博文(61)

文章存档

2010年(61)

分类: Oracle

2010-01-19 11:13:21

涂抹试阅章节:第8章-Rman说,我能

8.3 RMAN 备份初级演练

  RMAN 中所有的备份操作,都是通过 BACKUP 命令(指创建备份集方式的备份)进行的,对于比较简单的备份需求,甚至只需要执行一条命令,下面分别演示通过BACKUP命令进行不同级别的备份。

8.3.1 整库的备份

  只需要一条命令,如下所示:

    RMAN>BACKUP DATABASE;

    Starting backup at 29-MAR-09

    using channel ORA_DISK_1

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    input datafile fno=00001 name=F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

    input datafile fno=00002 name=F:\ORACLE\ORADATA\JSSBOOK\UNDOTBS01.DBF

    input datafile fno=00003 name=F:\ORACLE\ORADATA\JSSBOOK\SYSAUX01.DBF

    input datafile fno=00005 name=F:\ORACLE\ORADATA\JSSBOOK\SCOTT_TBS01.DBF

    input datafile fno=00004 name=F:\ORACLE\ORADATA\JSSBOOK\USERS01.DBF

    channel ORA_DISK_1: starting piece 1 at 29-MAR-09

    channel ORA_DISK_1: finished piece 1 at 29-MAR-09

    piece handle=F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\08KB53MK_1_1 tag=TAG2009032

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:46

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    including current control file in backupset

    including current SPFILE in backupset

    channel ORA_DISK_1: starting piece 1 at 29-MAR-09

    channel ORA_DISK_1: finished piece 1 at 29-MAR-09

    piece handle=F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\09KB53O2_1_1 tag=TAG2009032

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02

    Finished backup at 29-MAR-09

  执行上述命令后,将对目标中的所有数据文件进行备份,如果你对RMAN的返回信息看得足够认真,你应该已经发现,该备份集生成了两个备份片段:一个存储数据文件,另一个存储控制文件和SPFILE(服务器端初始化参数文件),都被保存到Oracle软件的目录下,这是因为没有为备份集指定存储路径,默认情况下就会存储到Oracle软件的安装目录中。

  如果是真正的备份操作,你肯定希望能够指定备份集的存储位置,没问题,最简单的方式是在执行BACKUP命令时,指定 FORMAT 参数来自定义备份片段的路径和命令规则,比如:

    RMAN>BACKUP DATABASE FORMAT 'f:\oracle\backup\bak_%U' ;

    Starting backup at 29-MAR-09

    using channel ORA_DISK_1

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    input datafile fno=00001 name=F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

    input datafile fno=00002 name=F:\ORACLE\ORADATA\JSSBOOK\UNDOTBS01.DBF

    input datafile fno=00003 name=F:\ORACLE\ORADATA\JSSBOOK\SYSAUX01.DBF

    input datafile fno=00005 name=F:\ORACLE\ORADATA\JSSBOOK\SCOTT_TBS01.DBF

    input datafile fno=00004 name=F:\ORACLE\ORADATA\JSSBOOK\USERS01.DBF

    channel ORA_DISK_1: starting piece 1 at 29-MAR-09

    channel ORA_DISK_1: finished piece 1 at 29-MAR-09

    piece handle=F:\ORACLE\BACKUP\BAK_0BKB55PM_1_1 tag=TAG20090329T163917 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:45

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    including current control file in backupset

    including current SPFILE in backupset

    channel ORA_DISK_1: starting piece 1 at 29-MAR-09

    channel ORA_DISK_1: finished piece 1 at 29-MAR-09

    piece handle=F:\ORACLE\BACKUP\BAK_0CKB55R3_1_1 tag=TAG20090329T163917 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03

    Finished backup at 29-MAR-09

  如果想查看创建的全库备份,可以通过 LIST 命令来查看:

    RMAN> LIST BACKUP OF DATABASE;

    List of Backup Sets

    ===================

    BS Key  Type LV       Size  Device       Type Elapsed Time   Completion Time

    -------  ---- -- ----------  -----------  ------------        ---------------

    8  Full       294.10M  DISK         00:00:36          29-MAR-09

             BP Key: 8   Status: AVAILABLE  Compressed: NO  Tag: TAG20090329T163917

             Piece Name: F:\ORACLE\BACKUP\BAK_0BKB55PM_1_1

      List of Datafiles in backup set 8

       File  LV  Type    Ckp SCN    Ckp Time  Name

       ----  --  ---- ----------    --------- ----

          1       Full    644090    29-MAR-09 F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

          2       Full    644090    29-MAR-09 F:\ORACLE\ORADATA\JSSBOOK\UNDOTBS01.DBF

          3       Full    644090    29-MAR-09 F:\ORACLE\ORADATA\JSSBOOK\SYSAUX01.DBF

          4       Full    644090    29-MAR-09 F:\ORACLE\ORADATA\JSSBOOK\USERS01.DBF

          5       Full    644090    29-MAR-09 F:\ORACLE\ORADATA\JSSBOOK\SCOTT_TBS01.DBF

  注意看返回结果的加粗部分,这部分内容说明该备份集对应的备份片段保存位置。

8.3.2   表空间的备份

  只要实例启动并处于加载状态,无论数据库是否打开,都可以在RMAN中对表空间进行备份。例如,备份USERS表空间(因为它最小,操作最方便,因此用它来做演示):

    RMAN> BACKUP TABLESPACE USERS;

    Starting backup at 29-MAR-09

    using channel ORA_DISK_1

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    input datafile fno=00004 name=F:\ORACLE\ORADATA\JSSBOOK\USERS01.DBF

    channel ORA_DISK_1: starting piece 1 at 29-MAR-09

    channel ORA_DISK_1: finished piece 1 at 29-MAR-09

    piece handle=F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\0DKB562D_1_1 tag=TAG20090329T164357 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01

    Finished backup at 29-MAR-09

  同样,我们在使用 BACKUP TABLESPACE 命令也可以通过显式指定 FORMAT 参数自定义备份片段名称。

  我们再通过LIST BACKUP命令查看一下备份:

    RMAN>LIST BACKUP OF TABLESPACE USERS;

  你会发现输出的信息中显示,USERS表空间存在两份备份(因为前面刚执行过全库备份嘛),不妨借此机会学习删除的操作,删除使用DELETE命令,下例使用DELETE命令删除指定的 BACKUPSET :

    RMAN> DELETE BACKUPSET 10;

    using channel ORA_DISK_1

    List of Backup Pieces

    BP Key   BS Key   Pc#  Cp#  Status       Device Type  Piece Name

    ------  -------   ---  ---  -----------  -----------  ----------

    10  10     1    1  AVAILABLE    DISK          F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\0DKB562D_1_1

    Do you really want to delete the above objects (enter YES or NO)? yes

    deleted backup piece

    backup piece handle=F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\0DKB562D_1_1 recid=10 stamp=682793037

    Deleted 1 objects

  执行DELETE命令时,默认情况下会给出是否确认删除的提示信息,以避免误操作。如果希望跳过提示的话(比如用后台脚本方式执行,无处确认),那么可以在执行DELETE命令时附加NOPROMPT子句,这里不演示了,感兴趣的朋友可以自行。

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