按下面步驟做即可:
1、關閉資料庫:
sql> shutdown immediate
2、裝載資料庫
sql> startup mount
3、刪除無效的資料庫檔案
sql> alter database datafile '***' offline drop;
4、開啟資料庫
sql> alter database open
5、刪除無效的表空間
sql> drop tablespace ***x including contents and datafiles;
先說明一下alter database datafile … offline drop:
在非歸檔模式下,可以使用… offline drop,在歸檔模式下,使用… offline. 這個命令的意思並不是從表空間將這個資料檔案徹底刪除,而是說將這個資料檔案「凍結」住:它的scn不在變化,不會再向它寫入任何資料;但是原有存在這個檔案中物件和資料還可以繼續使用。因此在使用這個命令後,通過修改控制檔案將它刪除,資料庫在啟動時就會報檔案丟失的錯誤,並且會在資料字典中產生乙個misg***xx的紀錄。因此,以乙個資料檔案是無法被直接從資料庫中刪除掉的。
如果需要減少表空間的資料檔案,可以採用以下辦法:
export除表空間的內容:exp … tablespaces=***;
使用include content子句刪除表空間:drop tablespace *** include content;
重見表空間,使之不包括需要去除掉的資料檔案;
import表空間的所有資料物件。
Oracle資料庫DBF檔案誤刪除解決方案
發現錯誤 資料庫未開啟 僅允許在固定表 檢視中查詢 解決方案 1.在執行 命令裡輸入sqlplus nolog然後回車,2.以sysdba的角色登入 connect sys 口令 as sysdba 3.先執行 alter database open 會出現如下的錯誤 第 1 行出現錯誤 ora 0...
Oracle資料庫DBF檔案誤刪除解決方案
資料庫oracledatabase 發現錯誤 資料庫未開啟 僅允許在固定表 檢視中查詢 解決方案 1.在執行 命令裡輸入sqlplus nolog然後回車,2.以sysdba的角色登入 connect sys 口令 as sysdba 3.先執行 alter database open 會出現如下的...
誤刪除了Oracle的dbf檔案後的解決方法
問題描述 誤刪除oracle資料庫的dbf檔案,在啟動和關閉資料庫是會提示錯誤。ora 01157 無法標識 鎖定資料檔案 ora 01110 資料檔案 x1000 1.dbf 未找到 解決方法 1 sql alter system set allow resetlogs corruption tr...