RMAN备份及恢复
RMAN_备份与恢复管理器_
Oracle数据库备份与恢复之四:RMAN(备份与恢复管理器)RMAN是ORACLE提供的一个备份与恢复的工具,可以用来备份和还原数据库文件、归档日志和控制文件。
它也可以用来执行完全或不完全的数据库恢复。
RMAN可以由命令行接口或者OEM的Backup Manager GUI 来控制。
4.1 基本知识4.1.1 RMAN的组件、概念1. RMAN 主要包括以下组件:Target Database:(目标数据库)就是需要RMAN对其进行备份与恢复的数据库,RMAN 可以备份数据文件,控制文件,归档日志,spfile.(注意:RMAN不能用于备份联机日志、初始化参数文件和口令文件)Server Session:(服务器会话)RMAN启动数据库上的Oracle服务器进程,将建立一个与目标数据库的会话。
由目标数据库上的服务器进程进行备份、还原、恢复的实际操作。
服务器进程RMAN的服务进程是一个后台进程,用于与RMAN工具与数据库之间的通信,也用于RMAN 工具与磁盘/磁带等I/O设置之间的通信,服务进程负责备份与恢复的所有工作,在如下情况将产生一个服务进程:当连接到目标数据库分配一个新的通道Channel:(通道)一个通道是RMAN和目标数据库之间的一个连接,"allocate channel"命令在目标数据库启动一个服务器进程,同时必须定义服务器进程执行备份或者恢复操作使用的I/O类型。
通道控制命令可以用来:控制RMAN使用的O/S资源,影响并行度指定I/O带宽的限制值(设置limit read rate 参数)定义备份片大小的限制(设置limit kbytes)指定当前打开文件的限制值(设置limit maxopenfiles)recovery catalog:(恢复目录)用来保存备份与恢复信息的一个数据库,不建议创建在目标数据库上。
RMAN 利用恢复目录记载的信息去判断如何执行需要的备份恢复操作。
oracle数据库rman备份计划及恢复
oracle数据库rman备份计划及恢复1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog。
2.rman备份脚本: a.RMAN 0级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 0 tag 'level0' format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_0_%u_%s_%p" as compressed backupset database;sql "alter system archive log current";backup filesperset 3 format "E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p_%c"archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} b.RMAN 1级备份命令:run{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;backup incremental level 1 tag 'level1' format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\RFDB_level_1_%u_%s_%p' as compressed backupset database;sql 'alter system archive log current';backup filesperset 3 format 'E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\arch_%u_%s_%p'archivelog all delete input; #备份归档可选,可以单独定期备份release channel c1;release channel c2;release channel c3;} c.rman删除备份命令(在保留最近⼀天备份的情况下,删除其他备份):DELETE NOPROMPT OBSOLETE RECOVERY WINDOW OF 1 DAYS; d.操作系统层⾯运⾏rman备份或删除命令(windows/linux):rman target sys/rf4rfvbgt56yhn@rfdb nocatalog CMDFILE 'D:\app\rman\rman_file\level_0.txt' log=E:\recovery_area\rfdb\rfdb\AUTOBACKUP\rman_dir\log\rman_level_0.log export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/db1export ORACLE_SID=atestexport PATH=$ORACLE_HOME/bin:$PATHrman target sys/123456@atest nocatalog CMDFILE '/u01/rman/rman.sh' log=/u01/rman/rman.log00 02 * * 1 bash /u01/rman_file/run_rman_0.sh00 02 * * 3 bash /u01/rman_file/run_rman_0.sh00 02 * * 5 bash /u01/rman_file/run_rman_0.sh00 04 * * * bash /u01/rman_file/run_delete.sh34 11 * * * bash /u01/rman_file/run_rman_0.sh e.rman参数设置:RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;RMAN> CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE disk TO 2;RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE disk TO 2;3.rman恢复a.拷贝datafile,controlfile和spfile的rman备份,以及完整的archivelog和完好的redolog⽂件到新的数据库。
05.使用RMAN进行备份与恢复
Datafile 2 Control file
Datafile 3
Datafile 1 Datafile 3 Datafile 2 Datafile 4
Control file
Backup Backup Backup
set 1
set 2
set 3
备份集的产生
• 在rman备份时,多个数据文件中的数据块组织到一起,形成 Rman备份的文件
集包含几个备份片文件也由这个限制决定 • 如果没有限制,一个备份集只生成一个备份片文件 • 不同管道产生的备份片文件大小可以不一样
Rman备份命令
• 生成备份集的命令是backup,可以用来备份数据库、表空间、 数据文件、控制文件、归档日志文件、初始化参数文件
• 备份命令中可以加入一些选项 • 对数据文件可以使用下面的命令备份
• 多个数据文件被组织在一起形成的备份叫做一个备份集 • 一次备份命令可以产生多个备份集 • 产生的备份集个数与备份命令中的filesperset设置有关 • 如果没有设置filesperset,所有被备份的文件放在一个备份集中
备份片 -- Backup Piece
• Rman产生的备份文件叫做备份片文件 • 一个备份集可能产生多个备份片文件 • 备份片文件中可能包括多个数据文件中的数据块 • 产生的备份片文件大小由管道限制maxpiecesize决定,每个备份
• %u
由 8 个字符组成的名称,该名称由该备份集号和创建
RMAN地备份与恢复步骤详解
在这里没有讨论多么深入的RMAN技术,也没有告诉大家这样去编写备份脚本,这并不是我的初衷,我只想把我会的写出来,和大家一起学习,一起进步,谢谢。
1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL> conn / as sysdba (以DBA身份连接数据库)SQL> shutdown immediate; (立即关闭数据库)SQL> startup mount (启动实例并加载数据库,但不打开) SQL> alter database archivelog; (更改数据库为归档模式)SQL> alter database open; (打开数据库)SQL> alter system archive log start; (启用自动归档) SQL> exit (退出)2、连接: %rman target=rman/rman@mydb (启动恢复管理器)3、基本设置: RMAN> configure default device type to disk; (设置默认的备份设备为磁盘)RMAN> configure device type disk parallelism 2; (设置备份的并行级别,通道数)RMAN> configure channel 1 device type disk fromat '/backup1/backup_%U'; (设置备份的文件格式,只适用于磁盘设备)RMAN> configure channel 2 device type disk fromat '/backup2/backup_%U'; (设置备份的文件格式,只适用于磁盘设备)RMAN> configure controlfile autobackup on; (打开控制文件与服务器参数文件的自动备份)RMAN> configure controlfile autobackup format for device type disk to '/backup1/ctl_%F'; (设置控制文件与服务器参数文件自动备份的文件格式)4、查看所有设置:RMAN> show all5、查看数据库方案报表:RMAN> report schema;6、备份全库:RMAN> backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)7、备份表空间:RMAN> backup tablespace system plus archivelog delete input; (备份指定表空间及归档的重做日志,并删除旧的归档日志)8、备份归档日志:RMAN> backup archivelog all delete input;9、复制数据文件:RMAN> copy datafile 1 to '/oracle/dbs/system.copy';10、查看备份和文件复本:RMAN> list backup;11、验证备份:RMAN> validate backupset 3;12、从自动备份中恢复服务器参数文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup; (从自动备份中恢复服务器参数文件) 13、从自动备份中恢复控制文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore controlfile to '/backup1' from autobackup; (从自动备份中恢复控制文件)13、恢复和复原全数据库:RMAN> shutdown immediate; (立即关闭数据库)RMAN> exit (退出)%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak (将数据文件重命名)%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak (将数据文件重命名)%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak (将数据文件重命名)%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak (将数据文件重命名)%rman target=rman/rman@mydb (启动恢复管理器)RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora (指定初始化参数文件启动数据库)RMAN> restore database; (还原数据库) RMAN> recover database; (恢复数据库)RMAN> alter database open; (打开数据库)14、恢复和复原表空间:RMAN> sql 'alter tablespace users offline immediate'; (将表空间脱机)RMAN> exit (退出恢复管理器)%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak (将表空间重命名)%rman target=rman/rman@mydb (启动恢复管理器)RMAN> restore tablespace users; (还原表空间)RMAN> recover tablespace users; (恢复表空间)RMAN> sql 'alter tablespace users online'; (将表空间联机)15、增量备份与恢复:第一天的增量基本备份:RMAN> backup incremental level=0 database plus archivelog delete input;第二天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第三天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第四天的增量差异备份:RMAN> backup incremental level=1 database plus archivelog delete input;第五天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第六天的增量差异备份:RMAN> backup incremental level=2 database plusarchivelog delete input;第七天的增量差异备份:RMAN> backup incremental level=0 database plus archivelog delete input;增量恢复:RMAN> shutdown immediate;RMAN> exit%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak%rman target=rman/rman@mydbRMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora RMAN> restore database;RMAN> recover database;RMAN> alter database open。
RMAN的备份与恢复步骤详解
RMAN的备份与恢复步骤详解RMAN(Recovery Manager)是Oracle数据库备份和恢复技术的核心工具,提供了一种集中管理和自动化备份和恢复操作的方式。
下面将详细介绍RMAN的备份与恢复步骤。
备份步骤:1.配置RMAN环境:确定RMAN备份目标、备份库、目标库的连接信息,并设置环境变量。
2.创建RMAN备份目标:使用CREATECATALOG命令创建RMAN备份目标,以存储备份信息和恢复目标的元数据。
3.创建备份策略:确定备份类型(完全备份、增量备份、增量备份级别等),备份周期(每日、每周)、备份级别(全局备份、局部备份)以及备份介质(磁盘、磁带)等。
4.执行备份命令:使用BACKUP命令执行备份操作。
根据备份策略选择相应的备份类型,并指定备份集的存储位置。
可以使用全量备份、增量备份或归档日志备份等方式进行备份。
5.备份验证和测试:使用RESTORE命令验证备份集是否可恢复。
可以恢复到测试库中,检查数据的完整性以及备份恢复的过程和时间。
恢复步骤:1.准备恢复环境:确定系统状态,关闭数据库、归档日志模式,备份控制文件,以备份增量恢复,恢复目标数据库的连接信息,并设置环境变量。
2.恢复控制文件:将备份的控制文件还原到指定位置,以获取数据库的结构信息。
3.恢复数据库文件:使用RESTORE命令恢复需要的数据文件。
可以选择完全恢复(使用全量备份和归档日志进行恢复)、增量恢复(使用增量备份和归档日志进行恢复)或点恢复(使用时间点或SCN号进行恢复)的方式。
4.打开数据库:使用OPENRESETLOGS命令打开数据库,恢复数据库文件到最新的状态。
5.检查恢复结果:验证恢复后数据库的完整性和一致性。
使用相应的SQL语句检查数据的正确性、索引的可用性和对象的有效性。
常见问题处理:1.恢复失败的处理:RMAN提供了很多失败后的处理命令,比如RECOVER命令来恢复损坏的数据文件,CROSSCHECK命令来检查备份文件的完整性等。
rman备份与恢复数据库
再执行BACKUP DATABASE指令备份整个数据库。
(1)使用数据库用户名和密码登陆RMAN
D:\>rman target system/oracle@orcl
(2)在RMAN执行程序中,通过客户端指令关闭数据库,
然后从RMAN加载数据到MOUNT状态。
RMAN>shutdown immediate
RMAN>startup mount
(3)使用BACKUP DATABRMAT参数说明备份的全库
(3)将数据库处于归档模式。
使用BACKUP DATABASE联机备份整个数据库
RMAN>backup database;
在备份整个数据库时,其实就是备份了数据文件,
其中包含了当前的控制文件和参数文件。而重做日志文件或归档日志文件
因此oracle建议创建单独的恢复目录,
这样可以更好的发挥RMAN提供的新特性。
快闪恢复区(flash recovery area)
快闪恢复区是存储与备份和恢复数据文件以及相关信息的存储区。
快闪恢复区保存了每个数据文件的备份,
增量备份,控制文件备份,以及归档重做日志备份。
信息库既可以存储在数据库的控制文件中,
也可以存储在恢复目录中。
在oracle中默认先将RMAN信息库写入控制文件,
如果存在恢复目录则需要继续写入到恢复目录。
使用控制文件的不足是控制文件中记录RMAN信息库的空间有限
当空间不足时可能被覆盖掉。
(2)控制文件
(3)数据库文件和控制文件的映像副本
(4)归档日志文件
RMAN备份与恢复
RMAN备份与恢复目录目录................................................................................................................. 错误!未定义书签。
前言................................................................................................................. 错误!未定义书签。
第一章:RMAN简介 .................................................................................. 错误!未定义书签。
第二章:RMAN组件 .................................................................................. 错误!未定义书签。
第三章:RMAN启动方式.......................................................................... 错误!未定义书签。
1、不用恢复目录的启动方式................................................................. 错误!未定义书签。
2、用恢复目录的启动方式..................................................................... 错误!未定义书签。
第四章:RMAN参数配置.......................................................................... 错误!未定义书签。
RMAN地备份与恢复步骤详解
在这里没有讨论多么深入的RMAN技术,也没有告诉大家这样去编写备份脚本,这并不是我的初衷,我只想把我会的写出来,和大家一起学习,一起进步,谢谢。
1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL> conn / as sysdba (以DBA身份连接数据库)SQL> shutdown immediate; (立即关闭数据库)SQL> startup mount (启动实例并加载数据库,但不打开) SQL> alter database archivelog; (更改数据库为归档模式) SQL> alter database open; (打开数据库)SQL> alter system archive log start; (启用自动归档) SQL> exit (退出)2、连接:%rman target=rman/rman@mydb (启动恢复管理器)3、基本设置:RMAN> configure default device type to disk; (设置默认的备份设备为磁盘)RMAN> configure device type disk parallelism 2; (设置备份的并行级别,通道数)RMAN> configure channel 1 device type disk fromat '/backup1/backup_%U'; (设置备份的文件格式,只适用于磁盘设备)RMAN> configure channel 2 device type disk fromat '/backup2/backup_%U'; (设置备份的文件格式,只适用于磁盘设备)RMAN> configure controlfile autobackup on; (打开控制文件与服务器参数文件的自动备份)RMAN> configure controlfile autobackup format for device type disk to '/backup1/ctl_%F'; (设置控制文件与服务器参数文件自动备份的文件格式)4、查看所有设置:RMAN> show all5、查看数据库方案报表:RMAN> report schema;6、备份全库:RMAN> backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)7、备份表空间:RMAN> backup tablespace system plus archivelog delete input; (备份指定表空间及归档的重做日志,并删除旧的归档日志)8、备份归档日志:RMAN> backup archivelog all delete input;9、复制数据文件:RMAN> copy datafile 1 to '/oracle/dbs/system.copy';10、查看备份和文件复本:RMAN> list backup;11、验证备份:RMAN> validate backupset 3;12、从自动备份中恢复服务器参数文件:RMAN> shutdown immediate; (立即关闭数据库) RMAN> startup nomount; (启动实例)RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup; (从自动备份中恢复服务器参数文件)13、从自动备份中恢复控制文件:RMAN> shutdown immediate; (立即关闭数据库) RMAN> startup nomount; (启动实例)RMAN> restore controlfile to '/backup1' from autobackup; (从自动备份中恢复控制文件)13、恢复和复原全数据库:RMAN> shutdown immediate; (立即关闭数据库) RMAN> exit (退出)%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak (将数据文件重命名)%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak (将数据文件重命名)%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak (将数据文件重命名)%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak (将数据文件重命名)%rman target=rman/rman@mydb (启动恢复管理器) RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora (指定初始化参数文件启动数据库)RMAN> restore database; (还原数据库) RMAN> recover database; (恢复数据库)RMAN> alter database open; (打开数据库)14、恢复和复原表空间:RMAN> sql 'alter tablespace users offline immediate'; (将表空间脱机)RMAN> exit (退出恢复管理器)%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak (将表空间重命名)%rman target=rman/rman@mydb (启动恢复管理器) RMAN> restore tablespace users; (还原表空间) RMAN> recover tablespace users; (恢复表空间)RMAN> sql 'alter tablespace users online'; (将表空间联机)15、增量备份与恢复:第一天的增量基本备份:RMAN> backup incremental level=0 database plus archivelog delete input;第二天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第三天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第四天的增量差异备份:RMAN> backup incremental level=1 database plus archivelog delete input;第五天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第六天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第七天的增量差异备份:RMAN> backup incremental level=0 database plus archivelog delete input;增量恢复:RMAN> shutdown immediate;RMAN> exit%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak%rman target=rman/rman@mydbRMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.oraRMAN> restore database;RMAN> recover database;RMAN> alter database open。
rman常用命令
rman常用命令摘要:一、RMAN 简介二、RMAN 常用命令分类1.备份命令2.还原命令3.恢复命令4.镜像命令5.管理命令三、RMAN 命令使用案例1.备份案例2.还原案例3.恢复案例4.镜像案例5.管理案例正文:RMAN(Recovery Manager)是Oracle 数据库中一款强大的数据备份和恢复工具。
它能够提供全面的数据保护,确保数据的安全性和完整性。
在实际应用中,掌握RMAN 的常用命令是进行数据库管理工作的基本要求。
本文将详细介绍RMAN 的常用命令,并通过实际案例演示如何应用这些命令。
一、RMAN 简介RMAN 是Oracle 数据库自带的一款备份和恢复工具,相较于传统的备份工具,如cp、tar 等,RMAN 具有更强大的功能,能够实现数据库的在线备份、自动备份、数据恢复等多种操作。
二、RMAN 常用命令分类下面我们将详细介绍RMAN 的常用命令,并根据功能将其分类。
1.备份命令RMAN 提供了一系列备份命令,用于对数据库、表空间、数据文件等进行备份。
常用的备份命令有:- backup database plus archivelog- backup database plus archivelog all- backup database plus archivelog incremental- backup database plus archivelog differential2.还原命令RMAN 的还原命令用于将备份的数据恢复到数据库中。
常用的还原命令有:- recover database- recover database until point- recover database plus archivelog- recover database plus archivelog until point3.恢复命令恢复命令用于将数据库恢复到某一特定时刻的状态。
常用的恢复命令有:- reset database- reset database plus archivelog- mount database- open database4.镜像命令RMAN 的镜像命令用于创建数据库的镜像副本。
[Oracle数据库]使用RMAN备份与还原数据库原理
使用RMAN备份与还原Oracle数据库原理一、数据库备份概念对于Oracle数据库,备份方式包括物理备份和逻辑备份。
1、物理备份将实际组成数据库的操作系统文件从一处拷贝到另一处的备份过程,通常是从磁盘到磁带。
该方法实现数据库的完整恢复,但数据库必须运行在归档模式下(业务数据库在非归档模式下运行),且需要极大的外部存储设备,例如磁带库,具体包括冷备份和热备份。
冷备份和热备份是物理备份(也称低级备份),它涉及到组成数据库的文件,但不考虑逻辑内容。
使用RMAN备份与还原ORACLE数据库的方式,属于物理备份方法。
2、逻辑备份利用SQL语言从数据库中抽取数据并存于二进制文件的过程。
业务数据库采用此种方式,此方法不需要数据库运行在归档模式下,不但备份简单,而且可以不需要外部存储设备,包括导出/导入(EXPORT/IMPORT)。
这种方法包括读取一系列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。
二、RMAN备份方式使用RMAN备份Oracle数据库,包括以下三种备份概念。
1、完全备份(Full Backup)与增量备份(Incremental Backup)完全备份与增量备份是针对数据文件而言,控制文件和归档日志文件不能进行增量备份。
当然,后两者可以做备份优化。
2、打开备份(Open Backup)或关闭备份(Closed Backup)数据库打开状态下进行备份即是打开备份,数据库关闭状态下(加载状态)进行的备份即关闭备份。
3、一致备份(Consistent Backup)与不一致备份(Inconsistent Backup)数据库打开状态或不干净关闭状态(shutdown abort)进行的备份是不一致备份,利用不一致的备份修复数据库后还需要做数据库的恢复。
在数据库干净关闭状态进行的备份是一致备份,利用一致备份修复数据库后不需要做数据库的恢复。
三、备份策略由于数据库占据物理空间较大,每次都进行全库备份,对存储介质要求比较高,也会造成空间的冗余浪费,故而在实际的数据备份过程中,通常采用增量备份的方法。
oraclerman管理方式下的热备份及恢复
数据丢失问题及解决方案
硬件故障
如硬盘故障、存储设备故障等,可能导致数据丢失。
软件故障
如数据库崩溃、软件错误等,也可能导致数据丢失。
数据丢失问题及解决方案
• 人为错误:如误删除数据、误修改数据等,也可能导致数据丢失。
数据丢失问题及解决方案
配置通道,设置备份设备 (例如磁盘、磁带等)和 相关参数。
创建RMAN备份
使用RMAN命令行工具执行 备份操作。
选择要备份的数据库、表空 间、数据文件等。
02
01
指定备份类型(完全、增量
等)。
03
设置备份文件的存储位置和 名称。
04
05
执行备份命令,监控备份过 程,确保备份成功完成。
监控备份过程
解决方案
建立数据恢复计划,以便在 数据丢失时能够快速恢复。
定期进行数据备份,确保数 据安全。
加强系统监控和安全措施, 防止人为错误导致的数据丢 失。
THANKS FOR WATCHING
感谢您的观看
01 在RMAN客户端中查看备份进度和状态。
02
检查备份日志文件,了解备份过程中的任 何错误或警告信息。
03
定期检查备份文件的完整性,确保备份数 据可用。
04
根据需要,可以设置自动备份计划,定期 自动执行备份操作。
03 Oracle RMAN热恢复操 作
恢复数据库
数据库恢复
在RMAN中,可以使用RESTORE命令来恢复数据库。RESTORE命令用于将数据库文件从备份中提取出来,并将其放 置在数据库的原始位置或指定的新位置。
方案
01 Oracle RMAN热备份介 绍
第6章 RMAN备份与恢复
new RMAN configuration parameters are successfully stored RMAN> configure channel 1 device type disk to destination 'd:\backup';
--设置通道1的备份路径为'd:\backup' new RMAN configuration parameters: CONFIGURE CHANNEL 1 DEVICE TYPE DISK TO DESTINATION
所谓通道:是指由服务器进程发起并控制目标数据库的文件与物理设备之间 的字节流。一个通道即为一个会话,一个会话对应于一个服务器进程。所有 的备份和恢复操作都是由RMAN连接的服务器进程完成的,更确切的说:是 由通道完成的。通道的分配主要有两种形式:自动分配通道和手动分配通道 。可以根据预定义的配置参数自动分配通道,也可以在需要时手动分配通道 。
为2,这样备份开始时会使用两个通道进行备份。
new RMAN configuration parameters: CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO
BACKUPSET; new RMAN configuration parameters are successfully stored 还原默认设置值: RMAN> configure device type disk clear; old RMAN configuration parameters: CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO
6.1.1 连接数据库
RMAN地备份与恢复步骤详解
RMAN地备份与恢复步骤详解RMAN(Recovery Manager)是Oracle数据库中用于备份和恢复数据的工具。
RMAN提供了一种灵活、高效的备份和恢复机制,可以帮助数据库管理员有效地管理数据库的备份和恢复工作。
在本文中,我们将详细介绍RMAN备份与恢复的步骤和操作方法。
备份步骤:1.配置RMAN环境:在开始进行RMAN备份之前,首先需要配置RMAN环境。
这包括设置RMAN的环境变量、创建RMAN的配置文件以及配置RMAN的连接信息等操作。
您可以使用RMAN命令行或者RMAN配置助手来完成这些操作。
2.创建备份任务:在配置好RMAN环境之后,可以通过RMAN命令行或者RMAN配置助手来创建备份任务。
您可以选择全量备份、增量备份或者归档日志备份等不同类型的备份任务。
3. 执行备份任务:一旦创建了备份任务,就可以使用RMAN命令来执行备份任务。
您可以使用“backup database”命令来执行全量备份任务,使用“backup incremental”命令来执行增量备份任务,使用“backup archivelog”命令来执行归档日志备份任务等。
4. 监控备份过程:在执行备份任务的过程中,可以使用RMAN命令来监控备份的进度和状态。
您可以使用“show”命令来查看备份任务的进度、使用“list”命令来列出备份文件的信息等。
5. 完成备份任务:一旦备份任务执行完毕,可以使用RMAN命令来验证备份文件的完整性和一致性。
您可以使用“crosscheck”命令来验证备份文件的状态,使用“delete”命令来删除过期的备份文件等。
恢复步骤:1.配置RMAN环境:在开始进行RMAN恢复之前,需要先配置好RMAN的环境。
确保RMAN的环境变量、配置文件和连接信息都已经设置好。
2. 恢复数据库:如果数据库遇到了故障或者数据丢失的情况,可以使用RMAN命令来恢复数据库。
您可以使用“restore database”命令来还原数据库的备份文件,使用“recover database”命令来恢复数据库的数据文件。
RMAN备份与恢复
%u 保证生成的文件名唯一
RMAN独立备份
♦ 备份表空间
Rman>run{ allocate channel dv1 type disk; backup format 'd:\database_d%d_t%t_s%s' (tablespace system); release channel dv1; }
RMAN启动
♦ 连接到目标数据库
rman\>connect target user/pwd@db_name 注意:1、connect不能简写为conn
2、连接USER必须具备SYSDBA权限 3、连接的db_name必须在tnsnames.ora中有 配置,且有效(即通过SQLPLUS可以连接) 4、target database 必须为archivelog 模式 5、如果是本地可以采用OS认证,如果是远程 需要使用密码文件认证。 6、RMAN工具版本与目标数据库必须是同一版本。
♦ ♦
SQL> alter database open resetlogs; 数据库已更改。
RMAN恢复
♦
如果控制文件没有备份到trace中采取如下方法,控制文件脚本要手工编写
♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦
CREATE CONTROLFILE REUSE DATABASE "LJW" RESETLOGS ARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 292 LOGFILE GROUP 1 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\REDO01.LOG' SIZE 50M, GROUP 2 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\REDO02.LOG' SIZE 50M, GROUP 3 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\REDO03.LOG' SIZE 50M -- STANDBY LOGFILE DATAFILE 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\SYSTEM01.DBF', 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\UNDOTBS01.DBF', 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\SYSAUX01.DBF', 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\USERS01.DBF', 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\LJW\LXJ.DBF' CHARACTER SET ZHS16GBK
OracleRMAN的备份与恢复命令详解
还原检查与恢复测试
与备份检查一样,还原操作也可以检查是否能正常 restore 或者是否该备份集是否有效。如::
可以使用 CHECK LOGICAL 选项测试通过了物理损坏检查的数据和索引块,查看它们是否存在逻辑损坏,如行片或索引条目损坏。如果检测到任何块存在逻辑损坏,则 将该块记录到服务器进程的警报日志和跟踪文件中。
可以使用 MAXCORRUPT 参数设置逻辑和物理损坏的阈值。只要在某个文件中检测到的逻辑和物理损坏总和低于该值,则 RMAN 命令完成,同时 Oracle 将损坏块的 范围植入到 V$COPY_CORRUPTION 视图。如果超出 MAXCORRUPT,则该命令终 止,并且不植入视图。 当并行度比较高时,占用的计算机资源较多,但备份操作完成 速度较快。缺省情况下将启用对物理损坏的错误检查。有关在备份过程中遇到的损坏数据文件块的信息将记录在控制文件和警报日志中。
运行 BACKUP ARCHIVELOG ALL 命令。注意如果备份优化被启用,RMAN只会备份未备份过的日志
备份 BACKUP命令中定义的文件
运行 ALTER SYSTEM ARCHIVE LOG CURRENT 命令
备份所有的剩下的归档日志
备份完后删除归档日志RMAN> backup …… ARCHIVELOG all delete all input;修改备份集的保存策略例如:将备份设置为永久有效RMAN> backup database keep forever logs|nologs;设置为有效期 180 天RMAN> backup database keep until time='sysdate+180';重写configure exclude / noexclude通过 configure exclude 可以配置 RMAN 不备份上次备份以来没有发生变化的数据文件。如果要确保 RMAN备份这些数据文件,可以在 backup命令中添加 noexclude 选项。 例如:RMAN> backup database noexclude;
RMAN备份与恢复
RMAN备份与恢复参考链接:RMAN是物理备份,可以做到任意时间点的恢复。
归档模式下,RMAN既可以冷备,也可以热备⾮归档模式下,RMAN只能冷备。
⼀、创建并注册恢复⽬录 1. SQL窗⼝中创建恢复⽬录所使⽤的表空间SQL>create tablespace rman_tbsp datafile '/u01/app/oracle/oradata/orcl/rman_tbsp.dbf' size 1G autoextend on;Tablespace created. 2. 创建RMAN⽤户并授权SQL>create user rman_user identified by123456default tablespace rman_tbsp temporary tablespace temp;SQL>grant connect,recovery_catalog_owner,resource to rman_user; 3. shell窗⼝打开恢复管理器rman target sysdba/123456 catalog rman_user/123456; 4. 在RMAN模式下,创建恢复⽬录create catalog tablespace rman_tbsp; 5. 在RMAN模式下,使⽤register命令注册数据库register database;database registered in recovery catalogstarting full resync of recovery catalogfull resync complete⼆、在归档模式下和⾮归档模式下备份数据库(⼀致性与⾮⼀致性)2.1⼀致性备份数据库⼀致性备份是指关闭了数据库后备份所有数据⽂件和控制⽂件的⽅法。
当使⽤SHUTDOWN 命令正常关闭了数据库之后,所有数据库⽂件的当前SCN 值完全⼀致,所以关闭后的数据库备份被称为数据库⼀致性备份或者冷备份。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux下Oracle9i RMAN备份及恢复步骤介1、切换服务器设置归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL> conn / as sysdba (以DBA身份连接数据库)SQL> shutdown immediate; (立即关闭数据库)SQL> startup mount (启动实例并加载数据库,但不打开)SQL> alter database archivelog; (更改数据库为归档模式)SQL> alter database open; (打开数据库)SQL> alter system archive log start; (启用自动归档)SQL> exit (退出)2、连接:%rman target=sys/password@mydb (启动恢复管理器)3、基本设置:RMAN> configure default device type to disk; (设置默认的备份设备为磁盘)RMAN> configure device type disk parallelism 2; (设置备份的并行级别,通道数)RMAN> configure channel 1 device type disk fromat '/backup1/backup_%U';(设置备份的文件格式,只适用于磁盘设备)RMAN> configure channel 2 device type disk fromat '/backup2/backup_%U';(设置备份的文件格式,只适用于磁盘设备)RMAN> configure controlfile autobackup on;(打开控制文件与服务器参数文件的自动备份)RMAN> configure controlfile autobackup format for device type disk to '/backup1/ctl_%F';(设置控制文件与服务器参数文件自动备份的文件格式)4、查看所有设置:RMAN> show all5、查看数据库方案报表:RMAN> report schema;6、备份全库:RMAN> backup database plus archivelog delete input;(备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志) 7、备份表空间:RMAN> backup tablespace system plus archivelog delete input;(备份指定表空间及归档的重做日志,并删除旧的归档日志)8、备份归档日志:RMAN> backup archivelog all delete input;9、复制数据文件:RMAN> copy datafile 1 to '/oracle/dbs/system.copy';10、查看备份和文件复本:RMAN> list backup;11、验证备份:RMAN> validate backupset 3;12、从自动备份中恢复服务器参数文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore spfile to pfile '/backup1/mydb.ora' from autobackup;(从自动备份中恢复服务器参数文件)13、从自动备份中恢复控制文件:RMAN> shutdown immediate; (立即关闭数据库)RMAN> startup nomount; (启动实例)RMAN> restore controlfile to '/backup1' from autobackup;(从自动备份中恢复控制文件)14、恢复和复原全数据库:RMAN> shutdown immediate;(立即关闭数据库)RMAN> exit(退出)%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak(将数据文件重命名) %mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak(将数据文件重命名) %mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak(将数据文件重命名) %mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak(将数据文件重命名) %rman target=rman/rman@mydb(启动恢复管理器)RMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.ora(指定初始化参数文件启动数据库)RMAN> restore database;(还原数据库)RMAN> recover database;(恢复数据库)RMAN> alter database open;(打开数据库)15、恢复和复原表空间:RMAN> sql 'alter tablespace users offline immediate';(将表空间脱机) RMAN> exit(退出恢复管理器)%mv /oracle/dbs/users01.dbf /oracle/dbs/users01.bak(将表空间重命名) %rman target=rman/rman@mydb(启动恢复管理器)RMAN> restore tablespace users;(还原表空间)RMAN> recover tablespace users;(恢复表空间)RMAN> sql 'alter tablespace users online';(将表空间联机)16、增量备份与恢复:第一天的增量基本备份:RMAN> backup incremental level=0 database plus archivelog delete input;第二天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第三天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第四天的增量差异备份:RMAN> backup incremental level=1 database plus archivelog delete input;第五天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第六天的增量差异备份:RMAN> backup incremental level=2 database plus archivelog delete input;第七天的增量差异备份:RMAN> backup incremental level=0 database plus archivelog delete input;增量恢复:RMAN> shutdown immediate;RMAN> exit%mv /oracle/dbs/tbs_12.f /oracle/dbs/tbs_12.bak%mv /oracle/dbs/tbs_13.f /oracle/dbs/tbs_13.bak%mv /oracle/dbs/tbs_14.f /oracle/dbs/tbs_14.bak%mv /oracle/dbs/tbs_15.f /oracle/dbs/tbs_15.bak%rman target=rman/rman@mydbRMAN> startup pfile=/oracle/admin/mydb/pfile/initmydb.oraRMAN> restore database;RMAN> recover database;RMAN> alter database open.(e129)on.htmsimulator/doc/license_keys.htmsimulator/doc/sdk.style.csssimulator/doc/davehitzforeword.htmsimulator/doc/faq.htmsimulator/doc/troubleshooting.htmsimulator/license.htmsimulator/readme.htmsimulator/runsim.shsimulator/setup.shsimulator/sim.tgz采用Oracle Archive Log模式和非Archive Log模式对备份恢复的影响备份的目的在于,当系统或数据库出现问题时,能够快速将数据库进行恢复。
对于Oracle 数据库,一般有两种备份方式:“物理备份”和“逻辑备份”。
“物理备份”指的是以copy数据文件方式进行备份;“逻辑备份”指的是用export等方式将数据从数据库中抽取出来。
物理备份又可以分为冷备份和热备份。
以下是各种备份的说明及前提条件。
- Cold Backup(冷备份)主要指在关闭数据库的状态下进行的数据库完全备份,备份内容包括所有数据文件、控制文件、联机日志文件、ini文件。
- Hot Backup(热备份)指在数据库处于运行状态下,对数据文件和控制文件进行备份,要使用热备份必须将数据库运行在(Archive Log)归档方式下。
- Export(逻辑备份)这是最简单的备份方法,可按数据库中某个表、某个用户或整个数据库来导出,并且支持全部、累计、增量三种方式。
使用这种方法,数据库必须处于打开状态,而且如果数据库不是在restrict状态将不能保证导出数据的一致性。
“物理备份”方式以相当于copy数据文件的方式进行备份,恢复时可以快速以相当于copy 的方式将备份的数据copy回来,所以备份速度特别是恢复速度非常快。
如果不采用Archive Log模式运行Oracle数据库,只有两种可用的备份方法:冷备份或export 逻辑备份。