oracle查看具体表占用空间 & oracle查看表属于哪个用户

文章目录

  • 前言
  • oracle查看具体表占用空间
    • 1、查看表空间总大小、使用率、剩余空间
    • 2、查看所有表的占用空间大小
    • 3、查看表空间对应日志文件
    • 4、查看所有表空间的总容量
    • 5、查询表所属哪个空间
  • oracle查看表属于哪个用户
    • 1、oracle怎么查看表属于哪个用户
    • 2、Oracle查询视图所属用户
    • 3、Oracle查询存储过程所属用户
  • 总结

前言

表空间是数据库的逻辑组成部分

从物理上讲:数据库数据存放在数据文件中

从逻辑上讲:数据库则是存放在表空间中

表空间由一个或是多个数据文件组成


oracle查看具体表占用空间

1、查看表空间总大小、使用率、剩余空间

SELECT --B.file_name "文件名",
       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,
             --  file_name,
               SUM(BYTES) TOTAL
        FROM   DBA_DATA_FILES
        GROUP  BY TABLESPACE_NAME/*,file_name*/) B
WHERE  A.TABLESPACE_NAME = B.TABLESPACE_NAME;

2、查看所有表的占用空间大小

select * from (
  select t.tablespace_name,t.owner, t.segment_name, t.segment_type, sum(t.bytes / 1024 / 1024) mb
  from dba_segments t
  where t.segment_type='TABLE'
  group by t.tablespace_name,t.OWNER, t.segment_name, t.segment_type
) t
order by t.mb desc;

3、查看表空间对应日志文件

select
  tablespace_name, file_id, file_name,
  round(bytes/(1024*1024),0) total_space
from dba_data_files
order by tablespace_name;

4、查看所有表空间的总容量

select dba.TABLESPACE_NAME, sum(bytes)/1024/1024 as MB  
from dba_data_files dba 
group by dba.TABLESPACE_NAME;

5、查询表所属哪个空间

SELECT table_name, tablespace_name
FROM user_tables
WHERE table_name = 'your_table_name';

这将返回名为“your_table_name”的表所属的表空间名称。如果您要查询其他用户的表,可以将“user_tables”更改为“all_tables”或“dba_tables”,具体取决于您对这些表的访问权限。

oracle查看表属于哪个用户

1、oracle怎么查看表属于哪个用户

SELECT * FROM DBA_TABLES WHERE TABLE_NAME='表名';

2、Oracle查询视图所属用户

SELECT * FROM ALL_VIEWS WHERE VIEW_NAME='视图名';

3、Oracle查询存储过程所属用户

SELECT * FROM ALL_OBJECTS WHERE OBJECT_TYPE='PROCEDURE' and OBJECT_NAME='存储过程名';

总结

如果此篇文章有帮助到您, 希望打大佬们能关注、点赞、收藏、评论支持一波,非常感谢大家!

如果有不对的地方请指正!!!

参考1

参考2

参考3

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/9fc99a9118.html