--查看表空间使用情况
SELECT a.tablespace_name "表空间名",total "表空间大小",free "表空间剩余大小",
(total - free) "表空间使用大小",total / (1024 * 1024 * 1024) "表空间大小(G)",free / (1024 * 1024 * 1024) "表空间剩余大小(G)",(total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)",round((total - free) / total, 4) * 100 "使用率 %" FROM (SELECT tablespace_name, SUM(bytes) free FROM dba_free_space GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes) total FROM dba_data_files GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name;
---查看表空间文件目录
select * from dba_data_files;
---创建新的undo表空间
CREATE UNDO TABLESPACE UNDOTBS0 DATAFILE
'/app/oracle/oradata/orcl12C/undotbs0.DBF' SIZE 30000M autoextend on;
--切换undo表空间
alter system set undo_tablespace=UNDOTBS0 scope=both;
----查看旧的表空间SEGMENT 是否全部OFFLINE
select t.segment_name,t.tablespace_name,t.segment_id,t.status
from dba_rollback_segs t;
---- 删除旧的表空间
drop tablespace UNDOTBS1 including contents and datafiles;