WEB开发网
开发学院数据库Oracle OCP Oracle 10g管理(二):使用恢复管理器 阅读

OCP Oracle 10g管理(二):使用恢复管理器

 2008-09-05 12:51:30 来源:WEB开发网   
核心提示:目标: 使用Recovery Manager使用RMAN BACKUP命令建立备份集和镜像 启用块变化跟踪 使用LIST和REPORT命令管理RMAN获得备份和镜像RMAN命令可以将多个RMAN命令组合在run和花括号{}中,组合成一个命令:这样能完成不同类型的备份,OCP Oracle 10g管理(二):使用恢复管理

目标:

使用Recovery Manager

使用RMAN BACKUP命令建立备份集和镜像

启用块变化跟踪

使用LIST和REPORT命令管理RMAN获得备份和镜像

RMAN命令

可以将多个RMAN命令组合在run和花括号{}中,组合成一个命令:这样能完成不同类型的备份,run块可以作为RMAN脚本存储,在执行重复的备份任务时可以调用它,排除了用户的某些互操作。

备份集和图像副本

备份集中的数据库文件必须以特定的RMAN格式存储,在这些文件可使用之前,必须用RESTORE命令处理。

备份集具有复用性:多个文件被读出,文件块相互交错在一起写在同一个备份集中。

   RMAN>run{

  allocatechannelc1typedisk;

  backdatabaseformat'db_%u_%d_%s';

  backupformat'log_t%t_s%s_p%p'

  (archivelogall);

  }

图像副本

数据库文件归档日志或控制文件的实际副本,不以RMAN特定格式存储,文件以原始格式存储。也不一定需要RMAN的restore命令处理。

由于不能被压缩,所需的空间要比备份集大的多。 

   RMAN>run{

  Allocatechannelch1typedisk;

  Copy

  Datafile1to'd:oracle……system01.dbf';

  Currentcontrolfileto'd:oracle……control01.ctl';

  }

10g里引进了新的命令:BACKUP AS COPY 

   RMAN>connecttarget

  RMAN>backupascopydatabase;

压缩备份

10g的新功能,可以压缩备份而不管理数据文件的内容。只有备份集能压缩!压缩对象包括:数据库、表空间和数据文件备份集。

为RMAN生成压缩备份集

   BACKUPASCOMPRESSED

  RMAN>backupascompressedbackupsetdatabase;

配置压缩备份集的默认设备: 

    RMAN>configuredevicetypediskbackuptypetocompressedbackupset;

压缩备份集大小大概是没压缩的五分之一。

完全备份和递增备份

前者为备份所有数据块,无论有无修改

后者则只在上一次递增备份后修改过的数据块

完全备份不能作为递增备份策略的一个部分来使用

递增备份的基线备份是0级备份

0级备份是在某一时间点上的完全备份

因为不需要复制所有的块,所以递增备份更快

两类递增备份:差异和累积

共同点:都是仅备份改变了的数据块

不同:差异备份:备份最近一次备份以后发生改变的数据块,默认的递增备份。

累积备份:备份本备份集上一级别的备份以后发生改变的数据块,需要更多的空间,恢复起来更快更容易。

完成差异递增备份

首次必须是0级备份

   RMAN>backupincrementallevel0database;

  RMAN>backupincrementallevel1database;

完成累积递增备份

   RMAN>backupincrementallevel1cumulativedatabase;

备份集的并行化

概念:多个备份集同时通过多个设备通道进行备份。

实现方法三种:1.为每个备份集分配一个通道2.configure设置parallenlism大于1的值3.手工通道分配

书上例子:

1. 

   Run{

  Allocatechannelc1typedisk;

  Allocatechannelc1typedisk;

  Backup

  (datafile1,2,3channelc1)

  (archiveallchannelc2);

  }

2.

   Rman>configuredevicetypediskparallenlism3;

  Backup

  (datafile1,2)

  (datafile3,4)

  (archivelogall);

备份选项

作用:控制文件名、备份性能和备份大小。

Format和tag:用于控制文件名

Rate :限制I/O带宽的使用

Duration :备份的时间,超过这个时间就自动停止备份,并作上不能使用的标志

Maxsetsize:限制备份集,注意:假如要备份的数据文件大于这个参数,备份失败

Maxpiecesize:限制备份块的大小

备份文件名的命名的默认是%u,是由系统生成的唯一文件名。

命名的例子:

1.format:

   Rman>backuptablespaceusersformat='user_bs_%d%p%s';

  Rman>backupascopytablespaceusersformat'd:oracle……users_%d%p%s';

2.tag: 

   Rman>backupdatabasetagweekly_backup;

RATE的例子:

Rman>configure channel device type disk rate 5m;------备份或恢复时,每秒只读5m

限制备份集和备份块大小的例子: 

   Rman>configurechanneldevicetupediskmaxsetsize=10G;

  Rman>backupdatabasemaxsetsize=10G;

  Rman>configurechanneldevicetypediskmaxpiecesize=2G;

启动和关闭块变化跟踪

块变化跟踪10g的新功能:记录上次备份以来变化了的块,存储在块变化跟踪文件里。好处:提高性能,不用扫描整个数据文件。

V$block_change_tracking

默认是停用状态

启动: 

   Alterdatabaseenableblockchangetrackingusingfile'd:oracle……ora_block_track.log';

关闭: 

   Alterdatabasedisableblockchangetracking;

10g引进了一个新的系统进程负责将数据写入块变化跟踪文件:CTRW

用EM管理备份

登陆》maintenance》manage current backups

监视RMAN备份

有关RMAN动态视图,可以查看在RMAN报告功能(如LIST、REPORT、SHOW命令)里没有的信息

V$rman_output进行中的RMAN消息 

V$rman_status标示完成的RMAN成功还是失败

V$process当前活动进程

V$recover_file要求恢复的数据文件

V$session活动会话

V$session_longops备份和恢复过程的报告

V$session_wait会话等待事件

V$backup_sync_io当I/O同步于备份过程时的行信息

V$backup_async_io当I/O异步于备份过程时的行信息

Db_key:一个实体是目标数据库的唯一备份,它由唯一的DB_KEY值标识。

每次数据库用resetlogs或者backup controlfile打开,就生成一个新的实体

例子:

获取目标库的dbid

   Selectdbidfromv$database;

目录库里执行:

以Rman用户登陆到目录数据库,

Select db_key from rc_database where dbid='上一条语句查到的dbid';

假如存在多个incarnation,下面语句能查询最当前的incarnation: 

  Selectbs_key,backup_type,completion_timefromrc_database_incarnationa,rc_backup_setbwherea.db_key=b.db_keyanda.db_key=b.db_keyanda.current_incarnation='yes';

使用LIST命令

查询rman资料档案并获取backup命令、copy命令和数据库实体的有关数据。

数据库实体(incarnation)是物理数据库的一个单独版本。

LIST命令输出显示change、crosscheck和delete命令已经使用过的文件。

可跟选项:by backup/by file,summary/verbose(精简/扩张输出)

例子: 

   Rman>listbackupsetbybackupsummary;

  Rman>listbackupsetbybackupverbose;

  Rman>listbackupsetbyfile;

也可通过查询v$backup_files和rc_backup_files列出备份

使用REPORT命令

查询哪些文件要备份、哪些不需要备份、数据库物理模式等信息。

可查询对文件是否完成了不可恢复的操作

Report命令形式:

Report need backup哪些文件要备份

Report obsolete哪些不需要备份

Report schema数据库物理模式

使用RMAN的作业示例

启用archivelog模式 

   Startupnomount;

  Alterdatabasearchivelog;

  Alterdatabaseopen;

使用RMAN备份归档日志 

   Run{

  Alloatechannelc1typedisk;

  Alloatechannelc2typedisk;

  Backupdatabase;

  Backup(archivelogall);

  }

制定备份工作计划表

备份命令run块可以存储在文件中,如DAILY_BACKUP.RCV。然后该文件可以被放入命令行序列,这在UNIX中被成为CRON,在windows操作系统中被成为AT。

   Rmantargetsys/xxx@target_dbcatalogrman_user/xxxx@catalog_db@daily_backup.rcv

格外收获:change archivelog all crosscheck

当有归档日志被手动删除的时候,执行这句,使rman不会去找那些删除了的归档日志备份。

Tags:OCP Oracle 管理

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接