歸檔模式下的表空間檔案無法用命令刪除

lnwxzyp發表於2009-02-11

今天出差的第二天,給一個地市配置好了一臺伺服器,早上開始賦許可權和增加表空間的操作,但是在增加了120G 空間後 給另外一個表空間增加檔案的時候 忙中出錯 把新表空間的增加語句 增加到了第一個空間裡面
create tablespace tbs DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\tbs01.DBF'
size 21474828288 autoextend off;
alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\tbs02.DBF' size 21474828288 autoextend off;
alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\tbs03.DBF' size 21474828288 autoextend off;
alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\tbs04.DBF' size 21474828288 autoextend off;
alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\tbs05.DBF' size 21474828288 autoextend off;
alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\tbs06.DBF' size 21474828288 autoextend off;

接著建立第二個表空間stbs
create tablespace stbs DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\stbs01.DBF'
size 21474828288 autoextend off;
alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\stbs02.DBF' size 21474828288 autoextend off;
建立完成之後才發現 "alter tablespace tbs add datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\RTBS\Stbs02.DBF' size 21474828288 autoextend off;" 這一句實際上是給前一個表空間增加檔案了,雖然增加也不會造成什麼大的問題,但是客戶要求的是120G 你多了也不好看 於是就刪除了tbs兩個表空間
DROP TABLESPACE TBS INCLUDING CONTENTS AND DATAFILES;
執行之後重新執行前面的建立語句,報錯:檔案已經存在.遠端登入上去一看,檔案果然還存在,馬上在我自己的機子上測試:

建立表空間
執行刪除

檢視資料夾 沒有相關的表空間檔案 說明語句是可以刪除表空間檔案的,google一下,原來歸檔模式下該語句不會真的刪除,而只是在dba_data_files檢視下看不到而已,(我的電腦由於空間不大因此沒有啟用歸檔模式.)遠端登入伺服器 停調監聽 停掉資料庫,找到那幾個表空間檔案,刪除.開啟監聽,啟動例項 OK 沒有問題,重新執行建立語句也沒有報錯. 這個資料庫完全是我自己給安裝了 希望老天保佑不出什麼大問題 保佑保佑.

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

相關文章