时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Oracle 10g 数据库备份与恢复 --------- Mr.Chao 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Oracle 10g恢复管理器 (RMAN)备份与恢复 Á 恢复管理器(Recovery Manager, RMAN)是数据的备份工具,是一个与 操作系统无关的数据库备份工具,可以跨越不同的操作系统进行数据库备 份. Á RMAN是通过启动操作系统进程将数据备份到磁盘或磁带上,与常用的 物理数据库备份,逻辑数据库备份不同,它使用数据库对数据库进行备份 的原理.可以使用COPY命令将数据库文件拷贝到磁盘或磁带上,也可以使 用BACKUP命令对整个数据库,一个指定的表空间,控制文件或日志文件进 行备份.BACKUP命令可以将数据库备份分成多个数据包,每一个包称为一 个备份子集(Backup Set),一个备份子集又可以分成多个备份片(Backup Piece).恢复管理器可以在不同的操作系统上进行备份. 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com RMAN概念 数据库备份 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com RMAN组成 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com RMAN连接目标数据库 Á 连接到目标数据库就是建立RMAN数据库与目标数据库之间的连 接.RMAN可以在无恢复目录与有恢复目录两种方式下连接到目标数据 库. 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Note:启动远程RMAN Á Rman target sys/oracle@sdzy 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 配置RMAN Á RMAN在执行数据库备份与恢复操作时,都要使用操作系统进程,启动操 作系统进程通过分配通道而实现,每分配一个通道,RMAN启动一个服务 器进程.通道包括自动通道分配与采用RUN命令手动通道分配.一个通 道与一个设备相联系,RMAN可以使用的通道设备包括磁盘与磁带. Á Oracle 10g 默认使用磁盘通道进行数据库备份.在RMAN下使用命令 Á Config Channel 指定磁盘与磁带类型自动通道,这样在命令 backup,restore,recover之前就不必定义通道了.手动方式可以定义两 种类型的通道,一是使用命令run{allocate channel…..}定义数据库备份 与恢复通道,二是使用rman>allocate channel for maintenance… Á 定义恢复目录维护类型通道. Á 定义自动通道:configure channel type Á 手动定义通道:run{allocate channel…..} Á 定义维护通道:allocate channel for maintenance 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 恢复管理器特征 Á 备份数据库、表空间、数据文件、控制文件、归档日志、 spfile .(联机日志、init文件、口令文件除外) Á 管理备份和恢复任务. Á 执行块级增量备份和媒体恢复. Á 检测坏块. Á 用二进制压缩备份文件. 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 显示通道配置参数 Á 如果要显示通道已经配置的参数,输入show all 命令即可.例如: 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com BACKUP命令语法 Á 使用backup命令可以备份的对象有: Á 全部数据库(database)包含所有数据文件,控制文件. Á 数据文件(datafile)备份数据文件. Á 表空间(tablespace)备份一个或多个指定的表空间. Á 归档日志(archivelog )备份归档日志文件. Á 控制文件(current controlfile)在线备份控制文件. Á Datafilecopy 备份使用copy备份的数据文件. Á Controlfilecopy 备份使用copy备份的控制文件. Á Backup set 备份使用backup命令备份的文件. Á 命令语法: Á Rman>backup ( ); Á 其中,是备份增量级,可以取full或incremental,前者表示 完全备份,后者表示增量备份,共有四级增量(1,2,3,4).归档日志不 能增量备份. 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á 备份对象. Á 为可选项,主要参数为: Á Tag:是标记 Á Format:是文件存储格式 Á Include Current Controlfile:表示备份控制文件 Á Filesperset:表示每个备份集所包含的文件 Á Channel:用于指定backup命令所用的通道 Á Delete:表示备份结束时是否删除归档日志 Á Maxsetsize:表示备份集的最大尺寸 Á Skip[offline,readonly,inaccessible]:可以选择备份条件. Á Rman>backup database skip readonly;备份数据库时不备份只读表 空间. Á Rman>backup database skip offline;备份数据库不备份离线表空间 Á Rman>backup database skip readonly skip offline;备份数据库时 而不备份所有只读表空间及离线表空间. 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com RMAN备份数据库 Á 1.备份全部数据库. Á RMAN>backup database plus archivelog; 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á 2.备份数据文件 Á RMAN>backup datafile 4,6; 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á 3.备份控制文件. Á 如果设置Configure controlfile autobackup on,则RMAN在执行 Á backup及copy命令时自动备份控制文件. Á RMAN>backup current controlfile format ‘/flash_area/backupset/controlfile111’; 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á Note:backup分为完全备份,增量备份,累积备份. Á Backup incremental level 0 database; (完全备份) Á Backup incremental level 1 database; (增量备份) Á Backup incremental level 1 cumulative database;(累积备份) Á 相对于较小的数据库(10G以内)则尽量每天做到完全备份,否 则一个星期做一次完全备份,每天做增量备份.(备份至少保留 二份以上.) 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Restore 、Recover命令语法 Á Restore命令语法如下: Á Rman>restore ; Á 其中,是备份文件对象,可以使用的对象包括:datafile 、 tablespace 、database 、controlfile from 、archivelog all Á 是选项,可以取的值包括:channel=channel_id 、untilclause 、 Á Check readonly 、device type 等 Á Recover命令语法如下: Á Rman>recover ; Á 其中, 是要恢复的对象类型,包括:datafile 、tablespace 、 database Á 是选项,包括:delete archivelog 、check readonly 、noredo等 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com RMAN恢复数据库 Á 恢复一个数据库有三个步骤: Á 1.恢复数据库时,首先启动到mount状态下. Á SQL>startup mount; Á 2.执行restore,recover命令,实施数据库恢复. Á SQL>restore database; Á SQL>recover database delete archivelog; Á 其中delete archivelog是可选参数,有此参数则表示恢复之后自 动删除已经使用的归档日志. Á 3.恢复完成,打开数据库. Á SQL>alter database open; 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Example:数据库恢复 Á RMAN> run { Á restore database; Á recover database; Á alter database open; Á } 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Example:恢复控制文件 Á 步骤:1)将数据库开启到nomount状态; Á 2)设定dbid; Á 3)装载之前指定备份控制文件(或者从自动备份中装载); Á 4)将数据库开启到mount状态; Á 5)用RMAN备份恢复数据库; Á 6)将数据库实例打开. 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 使用RMAN进行不完全恢复 Á 打开数据库到mount状态. Á 为并行分配多通道. Á 装载所有数据文件. Á 使用until time 、until sequence 、until scn命令恢复数据库. Á 用resetlogs选项打开数据库. Á 对数据库做一个完整的备份. Á Note:在使用RMAN中最为重要的三个命令 Á Backup、Restore 、Recover 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 恢复目录维护命令 Á RMAN的恢复目录用于存储目标数据库的备份与同步数据,当使用 RMAN备份了一个新的数据文件时,则RMAN自动修改恢复目录中的信 息,但是,如果数据库管理员手动物理地增加或删除备份文件,则恢复目 录不会改变,这时就必须对恢复目录使用命令进行改变,这就是恢复目 录的维护.命令包括 Delete,Change,Catalog,Crosscheck,List,Report,Show. Á 常用命令语法如下: Á backup Á [expired] of Á copy Á RMAN>delete [noprompt] Á [obsolete] 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á Á backup Á RMAN>list of Á Á copy Á expired Á RMAN>list incarnation Á incarnation of database 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á Á Á days Á Report need backup incremental = Á redundancy Á Report unrecoverable Á at time Report schema at scn Á at sequence 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Á [default] device type Á change [ for device type] Á maxsetsize Á [datafile | archivelog] backup copies RMAN>show backup optimization Á exclude Á controlfile autobackup [format] Á all 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com 如何用RMAN把数据备份到磁带? (比如备份整个数据库或是控制文件) 时代朝阳时代朝阳Oracle DBAOracle DBA职业培训课程才能展示(职业培训课程才能展示(Talent ShowTalent Show)) 北京时代朝阳数据库技术中心北京时代朝阳数据库技术中心 www.zhaoyangwww.zhaoyang--db.comdb.com Thanks!