2011-03-09 73 views
0

我需要擺脫錯誤地創建的數據文件,db是Oracle 10g R2。我可以做以下嗎?Oracle數據庫:我可以刪除由錯誤創建的數據文件嗎?

alter tablespace abc drop datafile '/abc.dbf' 

數據文件abc.dbf處於離線(需要恢復的)狀態和0字節。既然它已經退役,我認爲它不能這樣下降,所以你有什麼建議?

+0

重複:http://dba.stackexchange.com/questions/1648/oracle-database-what-c​​an-i-do-to-drop-a-data-file-mistakenly-created-and-當前 – 2011-03-10 03:22:29

+0

令人驚訝的是,發佈該問題的用戶是同一個用戶,哇! – 2011-03-10 09:28:09

回答

1

我會嘗試將其重新聯機,然後放下。

alter database abc datafile '/abc.dbf' online; 

,你會得到一個ORA錯誤,指出該文件需要恢復,這樣做

recover datafile '/abc.dbf'; 

使其聯機,並把它再

alter tablespace abc drop datafile '/abc.dbf'; 

如果不工作對你來說,做以下任一操作:

  • export tablespace obje感興趣的CTS,刪除整個表空間,然後再重新創建和導入導出的文件
  • 創建一個新的表空間,拷貝對象,重新創建索引和刪除舊錶

注意:如果你有滴表空間去,不要忘記指定使用它刪除數據文件。

drop tablespace abc including contents and datafiles; 
+0

thx多,很有意義!我從來沒有恢復過數據文件'/abc.dbf';是安全的嗎?因爲我們的prod數據庫現在沒有備份... – magqq 2011-03-09 23:34:47

+0

忘了提及我們沒有備份,因爲這個數據文件在離線和需要恢復狀態... – magqq 2011-03-10 00:11:23

+0

是的,'恢復數據文件'是安全的做剩下的數據庫,但我的觀點是,我不確定恢復會成功,這就是爲什麼我給你寫了一個選擇。 – 2011-03-10 06:32:44

相關問題