oracle刪除表空間的.DBF文件后,無法打開服務


今天給客戶初始化oracle還原數據。不小心手誤刪除了建立的表空間;

記住:客戶的環境能不刪東西就不刪。物理刪除是最最最忌諱的,一個生成的文件肯定是關聯了什么東西。

 

還原一旦手動刪除了表空間,oracle會出現什么樣的症狀? (因為我關閉了linux窗口,報錯靠描繪和借鑒其他博主報錯)

一、首先你的sysdba可以連上,但是查詢語句的時候就會報錯,報的錯誤就是打不開數據庫

查詢這個語句select file#,name,status from v$datafile;出現各種表空間名。

查詢這個語句是 select * from v$tempfile; 臨時表空間。

會提示缺失:xxx表空間不存在,因為被手動刪了。

類似oracle-01516,Oracle 11g ORA-01516: nonexistent log file, data file, or temporary file  ....

二、登錄用戶會報錯

Caused by: java.sql.SQLException: ORA-01109: database not open

三、不能創建數據庫,提示也是沒打開數據庫。

 

解決方法:

 

 登錄:
(1):sqlplus "/as sysdba" (2):SQL> shutdown immediate (3)SQL> startup ORACLE 例程已經啟動。
報錯類似

SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 293601280 bytes
Fixed Size 1248600 bytes
Variable Size 92275368 bytes
Database Buffers 192937984 bytes
Redo Buffers 7139328 bytes
數據庫裝載完畢。
ORA-01157: 無法標識/鎖定數據文件 6 - 請參閱 DBWR 跟蹤文件
ORA-01110: 數據文件 6: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERNACTIVEDB.DBF'

 

(5)SQL> select   name   from  v$datafile;

NAME
--------------------------------------------------------------------------------

NAME
--------------------------------------------------------------------------------
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERN\SYSTEM01.DBF
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERN\UNDOTBS01.DBF
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERN\SYSAUX01.DBF
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERN\USERS01.DBF
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERN\EXAMPLE01.DBF
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERNACTIVEDB.DBF
D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERN\DRP.DBF

SQL> alter database datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERNACTIVEDB.DBF' offline;

alter database datafile D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERNACTIVEDB.DBF offline
第 1 行出現錯誤:
ORA-01145: 除非啟用了介質恢復, 否則不允許立即脫機
此時alter system check datafiles命令可以用來糾正這個問題,使數據文件能夠正常訪問,將觸發實例重新識別並驗證這個數據文件。然后使數據庫能夠正常工作
SQL> alter system check datafiles;
System altered.

  

 

SQL>   alter   database  datafile'D:\ORACLE\PRODUCT\10.2.0\ORADATA\BJPOWERNACTIVEDB.DBF'OFFLINE  DROP ;
 
數據庫已更改。
SQL> shutdown immediate;
ORA-01109: 數據庫未打開
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 293601280 bytes
Fixed Size 1248600 bytes
Variable Size 92275368 bytes
Database Buffers 192937984 bytes
Redo Buffers 7139328 bytes
數據庫裝載完畢。
數據庫已經打開.

 

 

注意事項:

先offline 再online:
發現: offline 容易,online 難:

最好再讓系統檢查下審核下文件,核查下文件位置。

 sql:alter system check datafiles;
System altered.

如果報以下錯誤

ERROR at line 1:

ORA-01122: database file xxx  failed verification check
ORA-01110: data file 201: 'xxx/xxx/temp01.dbf'
ORA-01203: wrong incarnation of this file - wrong creation SCN

SQL> alter database tempfile '/u02/ezhou/temp01.dbf' offline;
Database altered.

SQL> alter database tempfile '/u02/ezhou/temp01.dbf' drop;

Database altered.

SQL> alter database tempfile '/u02/ezhou/temp01.dbf' online;
alter database tempfile '/u02/ezhou/temp01.dbf' online *
ERROR at line 1:
ORA-01122: database file 201 failed verification check
ORA-01110: data file 201: '/u02/ezhou/temp01.dbf'
ORA-01203: wrong incarnation of this file - wrong creation SCN

 

 

參考文章:https://blog.csdn.net/xml1996/article/details/104704869/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM