測試場景下,使用的oralce遇到表空間的占用超大,可以採用如下的方式進行空間的清理
首先使用sqlplus連線資料庫
sqlplus sys/password@orcl as sysdba 之類進行資料庫的連線沒然後進行如下的操作
##建立表空間
對於自己的測試庫和表等最好都建立自己的表空間,以方便清理和刪除
##檢視表空間的情況
oracle查詢表空間檔案所在路徑
select * from dba_data_files
通過這個命令可以檢視各表空間所在的路徑位置
##temp表空間的重建
+ 新建1個
當資料庫進行索引重建,或者大量資料匯入匯出時,會使得temp表空間暴增,很可能撐滿資料檔案,因為資料庫安裝的時候,temp表空間預設很自由乙個資料檔案
並且資料庫中單個資料檔案最大只能自增到32g,當超過32g時就不可用了,為了防止此故障發生,在做索引重建或者大量資料匯入匯出時,需要關注temp表空間
的增長情況,temp表空間過大時,可通過如下方法重建
sql> create temporary tablespace temp2 tempfile 'c:\oracle\product\10.2.0\oradata\orcl\temp2.dbf' size 200m autoextend off;
sql> alter database default temporary tablespace temp2;
sql> drop tablespace temp;
或者sql> drop tablespace temp including contents and datafiles cascade constraints(徹底刪除包括作業系統中的臨時表空間的資料檔案)
最後在作業系統上把temp的檔案刪除,就可以釋放空間。
+ 還原回來
還可以改為原來的temp
sql> create temporary tablespace temp tempfile 'c:\oracle\product\10.2.0\oradata\orcl\temp.dbf' size 200m autoextend off;
sql> alter database default temporary tablespace temp;
sql> drop tablespace temp2;
最後在作業系統上把temp的檔案刪除,就可以釋放空間。
如上就可以把非常大temp表空間清理掉
##system表空間用滿解決
alter database datafile 'c:\oracle\product\10.2.0\oradata\orcl\system01.dbf' autoextend on;
alter database datafile 'c:\oracle\product\10.2.0\oradata\orcl\system01.dbf' resize 2096m;
如果出現「ora-03297: 檔案包含在請求的 resize 值以外使用的資料」這個錯誤,調整表空間的大小即可,
完成後即可釋放多餘的表空間
oracle測試環境表空間清理
測試場景下,使用的oralce遇到表空間的占用超大,可以採用如下的方式進行空間的清理 首先使用sqlplus連線資料庫 sqlplus sys password orcl as sysdba 之類進行資料庫的連線沒然後進行如下的操作 建立表空間 對於自己的測試庫和表等最好都建立自己的表空間,以方便清...
關於ORACLE清理表空間總結
1.檢視索引和表的初始大小 select bytes 1024 1024 m table size u.from dba segments u where u.owner in clear trade inte ce security order by 1 desc 2.通過上面語句找到占用空間較大...
清理表空間
1 清理表 truncate table 2 重建temp表空間 create temporary tablespace temp1 tempfile d oracle product 10.2.0 oradata xgp3 temp02.dbf size 512m reuse autoextend...