Decode360's Blog

业精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

  BlogJava :: 首页 :: 新随笔 :: 联系 ::  :: 管理 ::
  397 随笔 :: 33 文章 :: 29 评论 :: 0 Trackbacks
RMAN学习笔记03——备份
 
 
    基础知识准备得差不多了,今天开始进入RMAN备份的实际演练。RMAN的备份提供了非常多的种类选择,例如冷备、热备、全库备份、数据文件备份、Log备份、controlfile备份等等,非常全面。当然实际环境中的备份基本都是使用脚本进行,但是这里先学习一下单条命令的语法和格式处理:
 
 
一、Copy备份:
 
    Copy用于数据文件的备份,可以复制单个数据文件、归档日志和控制文件等等。(其实跟OS里的复制粘贴是一个道理)
 
    具体语法如下:
    COPY KEYWORD <input_file> TO <location> ;
 
    其中:input_file用文件地址'D:\oracle\oradata\dodo\WXQ_TBS.ORA'来表示需要备份的单个数据文件。
 
    KEYWORD说明了文件的类型,包括:
 
    DATAFILE: 备份数据文件
    CURRENT CONTROLFILE: 备份控制文件
    ARCHIVELOG: 备份归档日志
    DATAFILECOPY: 备份已经备份的数据文件
    CONTROLFILECOPY: 备份已经备份的控制文件
    BACKUPPICE: 备份已经使用BACKUP备份的文件
 
    举例说明:
 
    RMAN> copy datafile 'D:\oracle\oradata\dodo\XDB01.DBF' to 'D:\oracle\oradata\dodo\rmanback\test1.cp';
    RMAN> copy current controlfile to 'D:\oracle\oradata\dodo\rmanback\test2.cp';
    注:current controlfile 不能制定文件名
 
 
二、BackUp备份:
 
    BACKUP是对数据的备份,可以备份某个表空间或者整个数据库,语法如下:
    BACKUP [level] <backup_type> ;
 
    LEVEL为备份增量级,取值为FULL(全备份)或INCREMENTAL(增量备份)
 
    BACKUP_TYPE为备份的数据库对象类型,包括以下几类:
 
1.备份数据库:
 
RMAN> BACKUP DATABASE FORMAT 'e:\oradata\backup\%U';
 
注:若不加FORMAT则自动复制到自己设定的默认channel目录里,若没有默认设置,则备份到ORACLE_HOME/database下
 
RMAN> run {
2> allocate channel ch1 device type disk format 'e:\oradata\backup\%U';
3> allocate channel ch2 device type disk format 'e:\oradata\backup\%U';
4> BACKUP DATABASE;}
 
:备份之后可使用一下命令显示备份信息 RMAN> list backup of database;
 
2.备份表空间:
 
RMAN> BACKUP TABLESPACEUSERS FORMAT 'e:\oradata\backup\%U';
 
RMAN> configure channel 1 device type disk format 'e:\oradata\backup\%U';
RMAN> BACKUP TABLESPACEUSERS;
 
注:channel后面跟的为号数,不是名字,不能用ch1
 
RMAN> run {
2> allocate channel ch1 device type disk format 'e:\oradata\backup\%U';
3> BACKUP TABLESPACE SYSTEM;}
 
:查看备份信息 RMAN> list backup of tablespace users;
 
3.备份数据文件:
 
首先需要使用以下SQL来确定每个datafile的编号:
 
select file_name,file_id,tablespace_name from dba_data_files;
 
RMAN> BACKUP DATAFILE 1,2,3;
 
注: RMAN> list backup of datafile n;
 
4.备份控制文件:
 
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
RMAN> configure controlfile autobackup format for device type disk to 'e:\oradata\backup\ctl_%F';
设置自动备份controlfile,以后任何操作都会自动备份到相应地址
 
对于SYSTEM TABLESPACE会自动备份CONTROLFILE
 
RMAN> BACKUP CURRENT CONTROLFILE;
 
在其他的备份操作中加入CONTROLFILE备份
RMAN> BACKUP TABLESPACE USERS INCLUDE CURRENT CONTROLFILE;
 
注:查看备份情况 RMAN> list backup of controlfile;
 
5.备份归档文件:
 
RMAN> BACKUP ARCHIVELOGALL [DELETE INPUT,DELETE ALL INPUT];
 
ALL :备份全部归档日志
DELETE INPUT :备份结束后删除已经备份的归档日志
DELETE ALL INPUT :备份结束后删除归档目录中的所有文件
 
在其他的备份操作中加入ARCHIVELOG备份
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;
 
PLUS ARCHIVELOG的工作流:
1.运行ALTER SYSTEM ARCHIVE LOG CURRENT语句对当前redolog进行归档
2.执行BACKUP ARCHIVELOG ALL命令备份所有已归档日志
3.执行BACKUP命令对指定项进行备份
4.再次运行ALTER SYSTEM ARCHIVE LOG CURRENT对当前redolog归档
5.对新生成的尚未备份的归档文件进行备份
 
查看:RMAN> LIST BACKUP OF ARCHIVELOG ALL;
 
 
三、增量备份:
 
    RMAN提供了1-3级的增量备份级别来提高备份速度。
    增量备份可以在归档模式和非归档模式下进行,但是在非归档模式下只能进行脱机备份。
 
    RMAN> BACKUP INCREMENTAL LEVEL=1 TABLESPACE system;
 
 
 
posted on 2008-09-13 23:19 decode360 阅读(321) 评论(0)  编辑  收藏 所属分类: 09.Recover

只有注册用户登录后才能发表评论。


网站导航: