非系統表空間損壞,rman備份恢復

張衝andy發表於2017-04-24

實驗條件:有完整可用備份
--查詢表空間情況
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
SYSAUX ONLINE
TEMP ONLINE
USERS ONLINE
UNDOTBS2 ONLINE
GOLDGATE ONLINE
FDA01 ONLINE
FDA02 ONLINE
ANDY ONLINE
9 rows selected.

SQL> 
col tablespace_name for a15
col file_name for a50
SELECT tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space
FROM dba_data_files where tablespace_name='ANDY' ORDER BY tablespace_name;

TABLESPACE_NAME FILE_ID FILE_NAME TOTAL_SPACE
--------------- ---------- -------------------------------------------------- -----------
ANDY 3 /home/oracle/app/oradata/orcl/andy01.dbf 10
ANDY 5 /home/oracle/app/oradata/orcl/andy02.dbf 1

--模擬表空間損壞
[oracle@11g orcl]$ ll andy*
-rw-r-----. 1 oracle oinstall 10493952 Mar 24 17:41 andy01.dbf
-rw-r-----. 1 oracle oinstall 1056768 Mar 24 17:53 andy02.dbf
[oracle@11g orcl]$ rm -rf andy*
[oracle@11g trace]$ cat alert_orcl.log |grep ORA-
ORA-01116: error in opening database file 3
ORA-01110: data file 3: '/home/oracle/app/oradata/orcl/andy01.dbf'
ORA-27041: unable to open file
ORA-01116: error in opening database file 5
ORA-01110: data file 5: '/home/oracle/app/oradata/orcl/andy02.dbf'
ORA-27041: unable to open file
--恢復過程
SQL> alter tablespace andy offline;
alter tablespace andy offline
*
ERROR at line 1:
ORA-01116: error in opening database file 3
ORA-01110: data file 3: '/home/oracle/app/oradata/orcl/andy01.dbf'
ORA-27041: unable to open file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

如果檔案不存在,就加immediate引數
SQL> alter tablespace andy offline immediate;
Tablespace altered.

rman>restore tablespace andy;
rman>recover tablespace andy;
rman>sql 'alter tablespace andy online';
sql statement: alter tablespace andy online


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2137910/,如需轉載,請註明出處,否則將追究法律責任。

相關文章