您的位置:首页 > 数据库 > Oracle

Oracle rman不完全恢复(数据文件,归档日志,控制文件全部丢失)

2018-01-17 00:00 1181 查看
首先,登录rman
[oracle@primary archivelog]$ rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on Wed Jan 17 15:58:51 2018

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

connected to target database (not started)
启动数据库进入nomount模式
RMAN> startup nomount;

Oracle instance started

Total System Global Area 835104768 bytes

Fixed Size 2217952 bytes
Variable Size 545261600 bytes
Database Buffers 285212672 bytes
Redo Buffers 2412544 bytes

先恢复控制文件
RMAN> restore controlfile from '/u01/rman/ctl_PRIMARY_20180117_30_1';

Starting restore at 17-JAN-18
using channel ORA_DISK_1

channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:04
output file name=/u01/app/oracle/oradata/primary/control01.ctl
output file name=/u01/app/oracle/flash_recovery_area/primary/control02.ctl
Finished restore at 17-JAN-18
控制文件恢复完成之后,启动数据库到mount模式
RMAN> startup mount;

database is already started
database mounted
released channel: ORA_DISK_1
恢复数据文件
RMAN> run{
2> restore database;
3> recover database;
4> }

Starting restore at 17-JAN-18
Starting implicit crosscheck backup at 17-JAN-18
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=20 device type=DISK
Crosschecked 8 objects
Finished implicit crosscheck backup at 17-JAN-18

Starting implicit crosscheck copy at 17-JAN-18
using channel ORA_DISK_1
Crosschecked 2 objects
Finished implicit crosscheck copy at 17-JAN-18

searching for all files in the recovery area
cataloging files...
no files cataloged

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/primary/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/primary/oracle_test.dbf
channel ORA_DISK_1: reading from backup piece /u01/rman/dx_lev0_20180117_22_1.bak
channel ORA_DISK_1: piece handle=/u01/rman/dx_lev0_20180117_22_1.bak tag=LEVEL 0
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:46
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/primary/system01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/primary/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/primary/users01.dbf
channel ORA_DISK_1: reading from backup piece /u01/rman/dx_lev0_20180117_21_1.bak
channel ORA_DISK_1: piece handle=/u01/rman/dx_lev0_20180117_21_1.bak tag=LEVEL 0
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:01:06
Finished restore at 17-JAN-18

Starting recover at 17-JAN-18
using channel ORA_DISK_1

starting media recovery

channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=19
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=20
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=21
channel ORA_DISK_1: reading from backup piece /u01/rman/arch_PRIMARY_20180117_29_1
chann
3ff0
el ORA_DISK_1: piece handle=/u01/rman/arch_PRIMARY_20180117_29_1 tag=TAG20180117T114334
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/app/oracle/oradata/archivelog/1_19_953687353.dbf thread=1 sequence=19
archived log file name=/u01/app/oracle/oradata/archivelog/1_20_953687353.dbf thread=1 sequence=20
archived log file name=/u01/app/oracle/oradata/archivelog/1_21_953687353.dbf thread=1 sequence=21
unable to find archived log
archived log thread=1 sequence=22
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/17/2018 16:04:27
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 22 and starting SCN of 1087946

恢复数据报错,根据sequence的值做恢复
RMAN> run{
2> set until sequence 22;
3> recover database;
4> }

executing command: SET until clause

Starting recover at 17-JAN-18
using channel ORA_DISK_1

starting media recovery
media recovery complete, elapsed time: 00:00:00

Finished recover at 17-JAN-18
恢复数据完成之后打开数据库
RMAN> alter database open resetlogs;

database opened

检查文件是否都恢复
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Oracle rman
相关文章推荐