博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Oracle查看表空间

Posted on 2018-11-16 13:44  咸鱼传说  阅读(137)  评论(0)    收藏  举报

知道表空间名,显示该表空间包括的所有表。

select * from all_tables where tablespace_name='表空间名'

知道表名,查看该表属于那个表空间

select tablespace_name,table_name from user_tables where table_name='emp'

 

需要使用有DBA权限的用户,用如下语句查询:

select username,default_tablespace from dba_users;

 

 

表空间使用情况:
SELECT a.tablespace_name "表空间名",
total "表空间大小",
free "表空间剩余大小",
(total - free) "表占用空间大小",
ROUND((total - free) / total * 100, 2) || '%' "已使用空间百分比"
FROM (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 total
FROM dba_data_files
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) / 1024 / 1024 free
FROM dba_free_space
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name
ORDER BY (total - free) DESC;

 

--查看表空间

select * from dba_data_files WHERE TABLESPACE_NAME = 'USERS';--D:\ORADATA\ORCL\USERS01.DBF;

select username,DEFAULT_tablespace,temporary_tablespace from dba_users WHERE USERname = 'SFE';


ALTER TABLESPACE USERS ADD DATAFILE 'D:\ORADATA\ORCL\USERS02.DBF'SIZE 500M AUTOEXTEND ON NEXT 200M MAXSIZE 31G;