ITPub博客

首页 > 数据库 > Oracle > 删除一个数据文件,advise failure恢复

删除一个数据文件,advise failure恢复

原创 Oracle 作者:家有ORACLE老公 时间:2020-02-13 21:56:05 0 删除 编辑

写在前面,手工建一个表空间,然后添加数据,后删除.dbf文件,进行advise failure恢复


I 准备

1 创建表空间

SQL> create tablespace myjia datafile '/home/oracle/cs/myjia01.dbf' size 100m;

Tablespace created.

2 创建表

SQL> create table lxtab1 tablespace myjia as select * from scott.emp;

Table created.

3 验证

SQL> select TABLE_NAME,TABLESPACE_NAME,STATUS from dba_tables where TABLE_NAME='LXTAB1';

TABLE_NAME               TABLESPACE_NAME              STATUS
------------------------------ ------------------------------ --------
LXTAB1                   MYJIA                  VALID

 

4 去底层删除myjia01.dbf

[oracle@jcy1 cs]$ rm myjia01.dbf


5 关库启库

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORACLE instance started.

Total System Global Area  221331456 bytes
Fixed Size            2251856 bytes
Variable Size          163578800 bytes
Database Buffers       50331648 bytes
Redo Buffers            5169152 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 6 - see DBWR trace file
ORA-01110: data file 6: '/home/oracle/cs/myjia01.dbf'


II 解决

1 已经启动到mount,控制文件没有丢,而使用advise failure 前提就必须控制文件正常

RMAN>  list failure;

using target database control file instead of recovery catalog
List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
28         HIGH     OPEN      13-FEB-20     One or more non-system datafiles are missing


RMAN> advise failure;  

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
28         HIGH     OPEN      13-FEB-20     One or more non-system datafiles are missing

analyzing automatic repair options; this may take some time
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=20 device type=DISK
analyzing automatic repair options complete

Mandatory Manual Actions
========================
no manual actions available

Optional Manual Actions
=======================
1. If file /home/oracle/cs/myjia01.dbf was unintentionally renamed or moved, restore it

Automated Repair Options
========================
Option Repair Description
------ ------------------
1       Restore and recover datafile 6  
  Strategy: The repair includes complete media recovery with no data loss
  Repair script: /u01/app/oracle/diag/rdbms/test/test/hm/reco_457853972.hm

RMAN> Restore datafile 6 ;

Starting restore at 13-FEB-20
using channel ORA_DISK_1

creating datafile file number=6 name=/home/oracle/cs/myjia01.dbf
restore not done; all files read only, offline, or already restored
Finished restore at 13-FEB-20

RMAN> recover datafile 6;

Starting recover at 13-FEB-20
using channel ORA_DISK_1

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

Finished recover at 13-FEB-20

RMAN> alter database open;

database opened


总结:

RMAN> list failure;        --查看是哪个数据文件丢失

RMAN> ;         --查看建议脚本

RMAN> Restore datafile 6 ;    --根据建议脚本恢复

RMAN> recover datafile 6;


另外还有一种解决,自己去恢复丢失文件

RMAN>  repair failure;

Strategy: The repair includes complete media recovery with no data loss
Repair script: /u01/app/oracle/diag/rdbms/test/test/hm/reco_1044460011.hm

contents of repair script:
   # restore and recover datafile
   restore datafile 6;
   recover datafile 6;
   sql 'alter database datafile 6 online';

Do you really want to execute the above repair (enter YES or NO)? yes
executing repair script

Starting restore at 13-FEB-20
using channel ORA_DISK_1

creating datafile file number=6 name=/home/oracle/cs/myjia01.dbf
restore not done; all files read only, offline, or already restored
Finished restore at 13-FEB-20

Starting recover at 13-FEB-20
using channel ORA_DISK_1

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

Finished recover at 13-FEB-20

sql statement: alter database datafile 6 online
repair failure complete

Do you want to open the database (enter YES or NO)? yes
database opened



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959246/viewspace-2675510/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-01-06

  • 博文量
    34
  • 访问量
    49012