===== Einen Oracle Tablespace verkleinern===== ==== Temp Tablespace ==== Ein local managed TEMP Tablespace kann mit der shrink Klausel verkleinert werden: alter tablespace temp shrink space keep 100M; alter tablespace temp shrink tempfile 'D:\ORACLE\ORADATA01\GPI\TEMP01.DBF' keep 10M; #alternativ ALTER database TEMPFILE '/oracle/GPI/oradata/temp01.dbf' RESIZE 1M; ==== Einen User Tablespace verkleinern ==== Ein Oracle Tablespace kann nur verkleinert werden wenn am Ende der Dateidatei noch ungenützter Platz vorhanden ist. Dazu wird der Befehl "alter database datafile '' resize " verwendet. Mit folgenden Script kann hierfür der maximale Platz und das passende Statement ermittelt werden: * http://orapowershell.codeplex.com/SourceControl/latest#sql/space_tablespace.sql Das Script mit dem Name eines Tablespaces oder mit % für alle aufrufen. SYS@GPI-jupiter>@space_tablespace MGMT_TABLESPACE Parameter 1 = Tablespace Name => 'MGMT_TABLESPACE' Space of the the table space Tablespace Size MB Size MB Size MB File File name total used freeable id name -------------------- -------------- -------------- -------------- ---- ----------------------- MGMT_TABLESPACE 3.400,00 3.235,01 164,99 17 ..RADATA01\GPI\MGMT.DB DLL to shrink the the tablespace COMMAND -------------------------------------------------------------------------------------------------- alter database datafile 'D:\ORACLE\ORADATA01\GPI\MGMT.DBF' resize 3236M;