刪除表空間的時候,如果該錶空間非空,則若使用drop tablesapce test1.的命令會報錯「表空間非空,請使用including contents」.此時的用法為:
drop tablecpace test1 including contents and datafiles;---同時刪除表空間以及資料檔案;
如果沒有在刪除表空間語句中加and datafiles,則資料檔案並沒有被自動刪除,檢視物理路徑時依然存在,只是檢視v$datafile的時候,系統會忽略它的存在。但是,若下次新建表空間的時候,不能夠新建相同的資料檔案,因為物理檔案中存在。如:
sql> create tablespace test1
2 logging
4 size 30m
5 autoextend on
6 next 3m maxsize unlimited
7 extent management local;
create tablespace test1
*第 1 行出現錯誤:
ora-27038: 所建立的檔案已存在
osd-04010: 指定了 選項, 但檔案已經存在
為了解決這個問題,嘗試過刪除它,不過試過了很多方法都刪除不了,因為控制檔案中好像忽略了它的的資訊。後來,反過來想了下,既然刪除不了,不如重新使用它,因為畢竟物理檔案是真實存在的。
sql> create tablespace test1
2 logging
表空間已建立。
表空間管理
第一步 檢視表空間的名字及檔案所在位置 select tablespace name,file id,file name,round bytes 1024 1024 0 total space from dba data files order by tablespace name 第二步 增大所需...
本地管理表空間和字典管理表空間
oracle的儲存分為四個層次,block extent segment和tablespace。oracle分配空間到segment時,是將一組連續的block新增到segment,這組連續的block稱作乙個extent。對於已經分配和還未分配的extent的元資料可能存放在資料字典中 字典管理表...
Oracle刪除表空間
刪除使用者以及使用者所有的物件 drop user zfmi cascade cascade引數是級聯刪除該使用者所有物件,經常遇到如使用者有物件而未加此引數則使用者刪不了的問題,所以習慣性的加此引數 刪除表空間 前提 刪除表空間之前要確認該錶空間沒有被其他使用者使用之後再做刪除 drop tabl...