RMAN备份各种物理文件

RMAN运行脚本的方式:
RMAN TARGET / @backup_db.rman
RMAN TARGET / cmdfile=backup_db.rman
在RMAN中执行操作系统中保存的脚本:
RMAN> @backup_db.rman
运行存储在catalog中的脚本(需要首先为RMAN创建恢复目录)
RMAN> RUN{EXCUTE SCRIPT backup_file_whole_db}

只要数据库处于加载状态,无论数据库能否打开工,都可以在RMAN中对表空间进行备份。
=========
RMAN备份:
===========================
C:\Users\Administrator>RMAN

恢复管理器: Release 11.2.0.1.0 - Production on 星期二 12月 16 22:42:22 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

RMAN> CONNECT TARGET /

连接到目标数据库: ORCL (DBID=1392118573)
============
1.整库备份,只需要执行一条命令即可

RMAN> BACKUP DATABASE; --同时会备份控制文件和参数文件在内。也可也使用FORMAT指定备份的路径及文件格式:如BACKUP DATABASE FORMAT ‘D:\ora_backup\bak_%U‘;
启动 backup 于 16-12月-14
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=22 设备类型=DISK
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00001 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF
输入数据文件: 文件号=00002 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF
输入数据文件: 文件号=00005 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF
输入数据文件: 文件号=00003 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF
输入数据文件: 文件号=00004 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 16-12月-14
通道 ORA_DISK_1: 已完成段 1 于 16-12月-14
段句柄=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_12_16\O1_MF_NNNDF_TAG20141216T224300_B90K7Z49_.BKP 标记=TAG20141216T224300 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:01:25
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 16-12月-14
通道 ORA_DISK_1: 已完成段 1 于 16-12月-14
段句柄=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_12_16\O1_MF_NCSNF_TAG20141216T224300_B90KBNYR_.BKP 标记=TAG20141216T224300 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
完成 backup 于 16-12月-14
--查看创建的全库备份:LIST BACKUP OF DATABASE;

2、表空间备份

RMAN> BACKUP TABLESPACE USERS; --同样可指定FORMAT参数
启动 backup 于 16-12月-14
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 16-12月-14
通道 ORA_DISK_1: 已完成段 1 于 16-12月-14
段句柄=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_12_16\O1_MF_NNNDF_TAG20141216T230050_B90L94N8_.BKP 标记=TAG20141216T230050 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:03
完成 backup 于 16-12月-14
--查看备份的表空间:LIST BACKUP OF TABLESPACE USERS;

3、数据文件的备份

RMAN> BACKUP DATAFILE ‘D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF‘;

启动 backup 于 16-12月-14
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=185 设备类型=DISK
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 16-12月-14
通道 ORA_DISK_1: 已完成段 1 于 16-12月-14
段句柄=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_12_16\O1_MF_NNNDF_TAG20141216T230945_B90LST4D_.BKP 标记=TAG20141216T230945 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
完成 backup 于 16-12月-14

4、控制文件、归档日志文件、参数文件的备份

RMAN> BACKUP CURRENT CONTROLFILE;
RMAN> BACKUP DATABASE INCLUDE CURRENT CONTROLFILE;
RMAN> LIST BACKUP OF CONTROLFILE;
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
===
RMAN> BACKUP ARCHIVELOG ALL;
RMAN> BACKUP CURRENT CONTROLFILE PLUS ARCHIVELOG;
==
RMAN> BACKUP SPFILE;
时间: 2025-01-02 15:15:51

RMAN备份各种物理文件的相关文章

RMAN备份恢复 控制文件和归档日志丢失情况

RMAN> backup current controlfile tag='bak_ctlfile' format='/home/oracle/backup/bak_ctl_%U_%T'; alter system switch logfile; alter system switch logfile; alter system switch logfile; 多切换几次,切出几个archivelog文件,删除其中的一个 rm o1_mf_1_3_cpk5wloy_.arc 然后删除控制文件 r

一次修改数据库物理文件造成Mysql宕机的恢复记录

事件起始 某夜,我正在床上冥想准备入睡,忽然同事向我求救:消息内容如下: Oh My Gold 改了些配置,啥都没了!都没了!没了!了! 我仔细询问,原来是她因为某些原因将某库的物理文件夹改名后,发现数据库找不到了.于是又将名称改回来.结果仍然找不到.这让她觉得数据可能被损坏了,于是赶忙来找我修复. 修复过程 我们数据库用的版本是 MySQL5.7 ,放置在Linux服务器上,在my.cnf 配置了数据库物理文件的存放地址.存放于 data 文件夹下. 表的存储引擎全部使用 InnoDB,dat

使用RMAN备份时应如何处置归档日志文件

昨天去某客户部署RMAN备份,在跑shell脚本的时候,提示找不到归档日志,因为客户那里之前只对数据库做EXPDP逻辑导出备份,并且每天都自动删除前一天的归档,每个归档的生成量大概在200M左右,因为考虑磁盘空间比较紧张,不得已而为之. 在我的脚本中,是采用backup database format 'xxx' plus archivelog format 'xxx'的方式进行备份的,在执行RMAN脚本时,由于是先对归档日志进行备份,再对数据库进行备份的,在脚本的输出日志中,提示找不到35xx

RMAN 备份恢复 删除表空间后控制文件丢失

先备份一个控制文件 RMAN> backup current controlfile tag='bak_ctlfile' format='/home/oracle/backup/bak_ctl_%U_%T'; drop一个表空间 SQL> drop tablespace xds including contents and datafiles; Tablespace dropped. 删除控制文件 rm /u01/app/oracle/oradata/orcl/control01.ctl rm

ORACLE 11G没有备份文件参数文件在异机通过rman备份恢复找回被误删的数据

背景:          同事误删除线上数据,所以需要从备份中找回数据恢复.真实屋漏偏逢连夜雨.船迟又遇打头风,前两天备份的磁盘坏块,现在只有rman全备的.bak文件,没有控制文件和参数文件,所以现在需要考虑的是如何根据bak文件在备份数据库上恢复数据,从中找出被误删的数据. 1 通过catalog start with''的方式来恢复 1.1手动创建控制文件 CREATE CONTROLFILE REUSE set DATABASE"powerdes" RESETLOGS ARCH

ORACLE 11G没有备份文件參数文件在异机通过rman备份恢复找回被误删的数据

背景:          同事误删除线上数据.所以须要从备份中找回数据恢复. 真实屋漏偏逢连夜雨.船迟又遇打头风.前两天备份的磁盘坏块,如今仅仅有rman全备的.bak文件,没有控制文件和參数文件,所以如今须要考虑的是怎样依据bak文件在备份数据库上恢复数据,从中找出被误删的数据. 1 通过catalog start with''的方式来恢复 1.1手动创建控制文件 CREATE CONTROLFILE REUSE set DATABASE"powerdes" RESETLOGS AR

ORACLE11g 没有控制文件如何通过rman备份恢复数据的详细实战过程

1.副总裁需要裸恢复的严峻现实 集团总部的信息部负责人给我打电话说为了找一年前的记录,所以需要对一年前2015年5月1日的数据进行恢复.而2016年初因为进行迁移,所以有些文件可能丢失,手上只有rman全备文件,希望在一天之内找回,集团一个副总裁在等着这个数据有急用. 我在电话里面说马上去做,接完电话,想到只有rman备份文件,而且是备份的数据文件,没有控制文件没有参数文件的备份,所以普通的 (1)      先恢复控制文件restore controlfile from '-bak'; (2)

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_header 在noarchivelog模式下,可以使用RMAN备份read-only和offline的表空间 ORACLE RMAN停机备份: 备份 RMAN连接上ORACLE,WINDOWS下在命令模式下 RMAN TARGET / 连接本地数据库用的是本地认证模式.RM

Oracle RMAN备份单个文件的并发执行

如果文件是数千兆字节,或者数百万兆字节,将需要并行化这一文件的备份,通常,一个通道只能读一个文件,但是用多段关键字可以改变这一行为: run { allocate channel t1 type sbt; allocate channel t2 type sbt; allocate channel t3 type sbt; allocate channel t4 type sbt; backup as compressed backupset datafile 16 section size 1