rman备份恢复操作命令
- 格式:docx
- 大小:26.78 KB
- 文档页数:2
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⽂件到新的数据库。
1. 检查数据库模式:sqlplus /nologconn /as sysdbaarchive log list (查看数据库是否处于归档模式中)若为非归档,则修改数据库归档模式。
startup mountalter database archivelogalter database open2.连接到target数据库命令:connect target / (connect target system/oracle@ora10g,如果数据库没有起来,也可要直接在rman命令下用startup进行启动数据库)可以连接到target database.(rman 一边连接到target数据库,另外一边连接到control file(nocatalog mode),control file 中存储rman 的备份信息)3.用list backupset 命令查看有没有备份的东西4. 常用备份命令:备份全库:RMAN> backup database plus archivelog delete input; (备份全库及控制文件、服务器参数文件与所有归档的重做日志,并删除旧的归档日志)备份表空间:RMAN> backup tablespace system plus archivelog delete input; (备份指定表空间及归档的重做日志,并删除旧的归档日志)_备份归档日志:RMAN> backup archivelog all delete input;======================对整个数据库进行备份==================1.对整个数据库进行全备份(full backup)。
只要输入命令: backup database;2.list backupset 查看备份的具体信息List of Backup Sets===================BS Key Type LV Size Device Type Elapsed Time Completion Time------- ---- -- ---------- ----------- ------------ ---------------1 Full 6.80M DISK 00:00:02 06-DEC-08BP Key: 1 Status: AVAILABLE Compressed: NO Tag: TAG20081206T201041 Piece Name:/home/oracle/flash_recovery_area/ORA10G/backupset/2008_12_06/o1_mf_ncsnf_TAG2 0081206T201041_4mntz78s_.bkpControl File Included: Ckp SCN: 782019 Ckp time: 06-DEC-08SPFILE Included: Modification time: 06-DEC-08BS(backupset), piece是一个文件,一个BS包含多个piece.3.rman中缺省的参数,可以通过show all ;来进行查看(RMAN configuration parameters),我们在使用backup database命令中,可以把这些default value 用固定的值来进行替代.4.我们可以把备份的文件才备份的目录中拷贝到磁带上,然后删除备份目录下面的备份文件,如果下次需要恢复的话,只要把文件重新拷回到用来的备份目录就可以了5.查看control file 文件中的备份信息(因为我们做的备份是在nocatalog模式下),control file 在/u01/oracle/oradata/ora10g目录下,由于control file 是个二进制文件,要查看control file 文件中的内容,用strings control03.ctl,发现control03.ctl中有rman备份的信息了====================0级增量备份===============概念:全备份和0级增量备份。
在这里没有讨论多么深入的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(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备份恢复操作手册-从零到无--时间:2020年9月2日--作者:飞翔的小胖猪1 备份1.1 备份说明rman可进行热备和冷备,一般情况下都是进行热备即不数据库备份。
执行的热备需要数据库处于归档模式下。
1.2 设置归档模式归档模式开启过后,当一个在线重做日志写满了过后,会切换到下一个在线重做日志中进行日志写入。
之前的在线重做日志会形成归档日志存放于归档日志目录中。
如果归档日志目录空间使用率100%,那么整个数据设置归档日志路径SQL> alter system set log_archive_dest_1='location=/u01/arch' #设置为本地目录作为归档日志目录,红色字体根据自己定义的目录填写SQL> alter system set log_archive_dest_1='location=+DATA/RACDB/ARCH' scope=spfile sid='*'; #使用ASM的环境下使用此命令SQL> show parameter log_archive_dest_1; #查看确认设置的归档日志路径开启归档归档模式的切换必须处于mount状态下,其他状态下不行哟。
SQL> shutdown immediate; #先正常关闭在用数据库,如果你的数据库正在运行SQL> startup mount; #启动数据库到mount阶段SQL> alter database archivelog; #设置数据库为归档模式SQL> alter database open; #启动数据库到open状态SQL> archive log list; #查看数据库当前是否处于归档模式下SQL> alter system switch logfile; #尝试切换一下在线重做日志文件,此时可以到之前设置的归档日志目录中查看是否有新文件,如果有新文件则表示归档正常。
在这里没有讨论多么深入的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备份恢复——RAC环境数据库的备份(六)这篇简单介绍RAC本地磁盘备份集备份到磁带后的恢复问题。
其实本地的备份集如果备份到了带库上,那么就和直接备份到带库上的备份没有什么区别。
整个恢复过程如下:$ srvctl stop db -d testrac$ srvctl start inst -d testrac -i testrac1 -o mount$ srvctl start inst -d testrac -i testrac2 -o mount保证两个实例都启动到mount状态,就可以进行数据文件的还原了,仍然是两个实例同时进行还原操作:$ rman target /恢复管理器: Release 10.2.0.3.0 - Production on 星期一5月21 15:22:01 2007Copyright (c) 1982, 2005, Oracle. All rights reserved.已连接到目标数据库: TESTRAC (DBID=4291216984, 未打开)RMAN> run2> {3> allocate channel c1 device type sbt connect sys/test@testrac1;4> allocate channel c2 device type sbt connect sys/test@testrac2;5> restore database;6> }使用目标数据库控制文件替代恢复目录分配的通道: c1通道c1: sid=308实例=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)分配的通道: c2通道c2: sid=306 实例=testrac2 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)启动restore 于21-5月-07通道c1: 正在开始恢复数据文件备份集通道c1:正在指定从备份集恢复的数据文件正将数据文件00001恢复到+DISK/testrac/dataf ile/system.262.618591167正将数据文件00005恢复到+DISK/testrac/datafile/us ers.267.618591279正将数据文件00006恢复到+DISK/testrac/datafile/zhejiang0 1.dbf正将数据文件00008恢复到+DISK/testrac/datafile/ndmain01.dbf正将数据文件00009恢复到+DISK/testrac/datafile/zhejiang03.dbf正将数据文件00010恢复到+DISK/testrac/datafile/ndindex01.dbf正将数据文件00012恢复到+DISK/tes trac/datafile/zhejiang05.dbf通道c1: 正在读取备份段57ii1upu_1_2通道c2:正在开始恢复数据文件备份集通道c2:正在指定从备份集恢复的数据文件正将数据文件00002恢复到+DISK/testrac/dataf ile/undotbs1.263.618591197正将数据文件00003恢复到+DISK/testrac/datafile/ sysaux.264.618591225正将数据文件00004恢复到+DISK/testrac/datafile/undotb s2.266.618591249正将数据文件00007恢复到+DISK/testrac/datafile/zhejiang02 .dbf正将数据文件00011恢复到+DISK/testrac/datafile/zhejiang04.dbf正将数据文件00013恢复到+DISK/testrac/datafile/lt_index_ts01.dbf正将数据文件00014恢复到+DISK/testrac/datafile/zhejiang06.dbf通道c2:正在读取备份段58ii1upq_1_2通道c2: 已恢复备份段1段句柄= 58ii1upq_1_2标记= TAG20070518T165421通道c2: 恢复完成, 用时: 00:29:51通道c1:已恢复备份段1段句柄= 57ii1upu_1_2 标记= TAG20070518T165421通道c1: 恢复完成, 用时: 00:30:55完成restore 于21-5月-07释放的通道:c1释放的通道: c2 RMAN> run2> {3> allocate channel c1 device type sbt connect sys/test@testrac1;4> allocate channel c2 device type sbt connect sys/test@testrac2;5> restore archivelog sequence between 134 and 136 thread 26> archivelog sequence between 216 and 220 thread 1;7> }分配的通道: c1通道c1: sid=308 实例=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)分配的通道: c2通道c2: sid=306 实例=testrac2 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)启动restore 于21-5月-07通道c1: 正在启动到默认目标的存档日志恢复通道c2:正在启动到默认目标的存档日志恢复通道c1: 正在恢复存档日志存档日志线程=1 序列=216通道c2: 正在恢复存档日志存档日志线程=2 序列=134通道c1:正在恢复存档日志存档日志线程=1 序列=217通道c1:正在读取备份段5bii1vpb_1_2通道c2: 正在恢复存档日志存档日志线程=2序列=135通道c2: 正在读取备份段5cii1vp7_1_2通道c2: 已恢复备份段1段句柄=5cii1vp7_1_2 标记= TAG20070518T171107通道c2: 恢复完成, 用时:00:03:26通道c2: 正在启动到默认目标的存档日志恢复通道c2:正在恢复存档日志存档日志线程=2 序列=136通道c2:正在读取备份段5eii9lpd_1_1通道c1: 已恢复备份段1段句柄= 5bii1vpb_1_2标记= TAG20070518T171107通道c1: 恢复完成, 用时: 00:03:42通道c1:正在启动到默认目标的存档日志恢复通道c1: 正在恢复存档日志存档日志线程=1 序列=218通道c1: 正在恢复存档日志存档日志线程=1 序列=219通道c1:正在恢复存档日志存档日志线程=1 序列=220通道c1:正在读取备份段5dii9lpj_1_1通道c2: 已恢复备份段1段句柄= 5eii9lpd_1_1标记= TAG20070521T150938通道c2: 恢复完成, 用时: 00:01:31通道c1:已恢复备份段1段句柄= 5dii9lpj_1_1 标记= TAG20070521T150938通道c1:恢复完成, 用时: 00:03:01完成restore 于21-5月-07释放的通道: c1释放的通道: c2RMAN> host 'rcp racnode1:/data1/archivelog/*.dbf/data1/archivelog';主机命令完成RMAN> run2> {3> allocate channel c1 device type sbt connect sys/test@testrac1;4> allocate channel c2 device type sbt connect sys/test@testrac2;5> recover database;6> }分配的通道: c1通道c1: sid=308 实例=testrac1 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)分配的通道: c2通道c2: sid=306 实例=testrac2 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)启动recover 于21-5月-07正在开始介质的恢复存档日志线程1 序列216已作为文件/data1/archivelog/1_216_618591128.dbf存在于磁盘上存档日志线程1 序列217已作为文件/data1/archivelog/1_217_618591128.dbf 存在于磁盘上存档日志线程 1 序列218已作为文件/data1/archivelog/1_218_618591128.dbf 存在于磁盘上存档日志线程1 序列219 已作为文件/data1/archivelog/1_219_618591128.dbf存在于磁盘上存档日志线程 1 序列220已作为文件/data1/archivelog/1_220_618591128.dbf 存在于磁盘上存档日志线程2 序列134 已作为文件/data1/archivelog/2_134_618591128.dbf存在于磁盘上存档日志线程 2 序列135已作为文件/data1/archivelog/2_135_618591128.dbf 存在于磁盘上存档日志线程2 序列136 已作为文件/data1/archivelog/2_136_618591128.dbf存在于磁盘上存档日志文件名=/data1/archivelog/1_216_618591128.dbf 线程=1 序列=216存档日志文件名=/data1/archivelog/2_134_618591128.dbf 线程=2序列=134存档日志文件名=/data1/archivelog/2_135_618591128.dbf 线程=2序列=135存档日志文件名=/data1/archivelog/1_217_618591128.dbf 线程=1序列=217存档日志文件名=/data1/archivelog/1_218_618591128.dbf 线程=1序列=218存档日志文件名=/data1/archivelog/2_136_618591128.dbf 线程=2序列=136存档日志文件名=/data1/archivelog/1_219_618591128.dbf 线程=1序列=219存档日志文件名=/data1/archivelog/1_220_618591128.dbf 线程=1序列=220介质恢复完成, 用时: 00:07:03通道c2:正在启动到默认目标的存档日志恢复通道c2: 正在恢复存档日志存档日志线程=2 序列=137通道c2: 正在读取备份段5fii9m0p_1_1通道c2: 已恢复备份段1段句柄= 5fii9m0p_1_1 标记= TAG20070521T150938通道c2: 恢复完成, 用时:00:03:05通道c1: 正在启动到默认目标的存档日志恢复通道c1:正在恢复存档日志存档日志线程=1 序列=221通道c1:正在读取备份段5gii9m2e_1_1通道c1: 已恢复备份段1段句柄= 5gii9m2e_1_1标记= TAG20070521T150938通道c1: 恢复完成, 用时: 00:02:16完成recover于21-5月-07释放的通道: c1释放的通道: c2在备份、恢复过程中,发现了一个小问题。
首先确定/u02/rman目录是否存在
export ORACLE_SID=数据库实例名
rman备份操作:
使用sys用户登录rman
rman target sys/syscode #进入rman
run{ #备份数据库
ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT '/u02/rman/test_%U';
ALLOCATE CHANNEL CH2 DEVICE TYPE DISK FORMAT '/u02/rman/test_%U';
BACKUP incremental level 0 DATABASE plus archivelog delete input;
RELEASE CHANNEL CH1;
RELEASE CHANNEL CH2;
}
list backupset; #备份完毕,记录scn (备份时记录备份完成的SCN号,此SCN号作为数据库恢复的时间点,必须记录下来)
#SCN号类似如下:
rman 恢复操作
1、首次进行恢复
使用sys用户登录rman
rman target sys/syscode #进入rman
shutdown immediate #停止数据库
startup mount; #启动实例
run{
set until scn ********; #**为备份时记录的SCN号
restore database; #还原数据库
recover database; #恢复数据库
sql 'alter database open resetlogs'; #打开数据库
}
2、多次恢复
在使用备份文件恢复数据库,用open resetlogs方式打开数据之后,如果需要再次恢复数据库,需要指定数据库的incarnation.
使用sys用户登录rman
rman target sys/syscode #进入rman
shutdown immediate #停止数据库
startup mount; #启动实例
list backupset; #选择scn (备份时记录备份完的SCN号)
#SCN号类似如下:
list incarnation; #列出scn重置时间点
reset database to incarnation n; #根据上次resetlogs时间点设置incarnation key run{
set until scn ********; #设置恢复点为上次备份时间点
restore database; #还原数据库
recover database; #恢复数据库
sql 'alter database open resetlogs'; #打开数据库
}。