创建表空间示例:
create tablespace data_ts datafile '/data/oradata/data1.dbf' size 20G autoextend on next 100M maxsize unlimited;
向表空间添加数据文件示例:
alter tablespace "data_ts" add datafile '/data/oradata/data2.dbf' size 20G autoextend on next 100M maxsize unlimited;
创建temp表空间示例:
create temporary tablespace temp_ts datafile '/data/oradata/data_temp.dbf' size 1G autoextend on next 100M maxsize 20G;
查看表空间名称、大小、使用大小、剩余大小和使用率:
SELECT a.tablespace_name "表空间名称",
total / (1024 * 1024) "表空间大小(M)",
free / (1024 * 1024) "表空间剩余大小(M)",
(total - free) / (1024 * 1024 ) "表空间使用大小(M)",
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
B.FILE_NAME 物理文件名,
B.TABLESPACE_NAME 表空间名称,
B.BYTES/1024/1024 大小M,
(B.BYTES-SUM(NVL(A.BYTES,0)))/1024/1024 已使用M,
SUBSTR((B.BYTES-SUM(NVL(A.BYTES,0)))/(B.BYTES)*100,1,5) 使用率
FROM DBA_FREE_SPACE A,DBA_DATA_FILES B
WHERE A.FILE_ID=B.FILE_ID
GROUP BY B.TABLESPACE_NAME,B.FILE_NAME,B.BYTES
ORDER BY B.TABLESPACE_NAME;
查看表空间数据文件:
select t1.name,t2.name
from v$tablespace t1,v$datafile t2
where t1.ts# = t2.ts#;
查看用户默认表空间
select username,default_tablespace from dba_users;
SELECT USERNAME,DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME='DB_USER_NAME';
查看表空间是否开启自动扩展
SELECT FILE_NAME AS 数据文件,TABLESPACE_NAME AS 表空间名称,AUTOEXTENSIBLE AS 自动扩展,STATUS AS 状态,MAXBYTES AS 可扩展最大值,USER_BYTES AS 已使用大小,INCREMENT_BY AS 自动扩展增量 FROM DBA_DATA_FILES;
删除表空间和数据文件
DROP TABLESPACE TABLE_SPACE_NAME INCLUDING CONTENTS AND DATAFILES;
网友评论