SELECT a.tablespace_name "表空间名",total 表空间大小,free 表空间剩余大小,
(total-free) 表空间使用大小,
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
2.查询表空间物理文件
SELECT tablespace_name,
file_id,
file_name,
round(bytes / (1024 * 1024), 0) total_space
FROM dba_data_files
ORDER BY tablespace_name,file_name;
3.增加表空间的方式
3.1增加表空间物理文件
ALTER TABLESPACE TEST_TS ADD DATAFILE
'D:\ORADATA\TEST_TS_00.DBF' SIZE 1024 M ;
3.2新增数据文件且允许数据文件自动增长
ALTER TABLESPACE TEST_TS ADD DATAFILE
'D:\ORADATA\TEST_TS_00.DBF' SIZE 50M
AUTOEXTEND ON NEXT 5M MAXSIZE 100M;
3.3允许已存在的数据文件自动增长
ALTER DATABASE DATAFILE 'D:\ORADATA\TEST_TS_00.DBF'
AUTOEXTEND ON NEXT 5M MAXSIZE 100M;
3.4手工改变已存在数据文件的大小
ALTER DATABASE DATAFILE 'D:\ORADATA\TEST_TS_00.DBF'
RESIZE 100M;