Oracle 数据字典查询

原创 2015年11月19日 16:47:19

1,表空间大小查询

当前表空间大小
select tablespace_name, sum(bytes)/1024/1024/1024 GB from dba_data_files
group by tablespace_name order by 2 desc


已使用的表空间大小
select tablespace_name, sum(bytes)/1024/1024/1024 from dba_segments
group by tablespace_name order by 2 desc

未使用空间大小
select sum(bytes)/1024/1024/1024 from dba_free_spacewhere tablespace_name='BIDWDATA_TBS' 

 

2,表大小和行数查询

SELECT DBA_SEGMENTS.owner,SEGMENT_NAME,SEGMENT_TYPE,num_rows/100000000 亿行, SUM(BYTES) / 1024 / 1024/1024 GBYTESE 
  FROM DBA_SEGMENTS  ,dba_tables
 WHERE --SEGMENT_TYPE = 'TABLE'  and
 DBA_SEGMENTS.tablespace_name in ('BIDWDATA_TBS','DATA_TBLSPC','BIODSDATA_TBS')
 and SEGMENT_NAME like 'TF_DBD%'
 and SEGMENT_NAME not like '%$%'
 and
DBA_SEGMENTS.segment_name=dba_tables.table_name
 and dba_tables.owner in ('BI_DW','BI_ODS','BI_STAGE')
 and num_rows>0
 GROUP BY  DBA_SEGMENTS.owner,SEGMENT_NAME,SEGMENT_TYPE,num_rows
 order by 5 desc

 

3,获取对象DDL语句

包括表,表分区,索引,存储过程等

SELECT DBMS_METADATA.GET_DDL('TABLE', 'TF_DBD_SALE_HOSP_STRUC') FROM DUAL;

SELECT DBMS_METADATA.GET_DDL('INDEX', 'IDX_TF_DBD_SALE_HOSP_STRUC_ADJ') FROM DUAL;

 

4,索引查询

select * from DBA_PART_INDEXES s where s.table_name='TF_DBD_SALE_HOSP_STRUC' --分区索引(global/local)

select * from Dba_ind_partitions i where i.index_owner='OWBI_DW' and i.index_name like '%SALE_HOSP%'  --每个分区索引的分区级统计信息
select * from Dba_Indexes where table_name='TF_DBD_SALE_HOSP_STRUC' --所有索引

 


显示分区表信息
  显示数据库所有分区表的信息:DBA_PART_TABLES
  显示当前用户可访问的所有分区表信息:ALL_PART_TABLES
  显示当前用户所有分区表的信息:USER_PART_TABLES
  显示表分区信息 显示数据库所有分区表的详细分区信息:DBA_TAB_PARTITIONS
  显示当前用户可访问的所有分区表的详细分区信息:ALL_TAB_PARTITIONS
  显示当前用户所有分区表的详细分区信息:USER_TAB_PARTITIONS
  显示子分区信息 显示数据库所有组合分区表的子分区信息:DBA_TAB_SUBPARTITIONS
  显示当前用户可访问的所有组合分区表的子分区信息:ALL_TAB_SUBPARTITIONS
  显示当前用户所有组合分区表的子分区信息:USER_TAB_SUBPARTITIONS
  显示分区列 显示数据库所有分区表的分区列信息:DBA_PART_KEY_COLUMNS
  显示当前用户可访问的所有分区表的分区列信息:ALL_PART_KEY_COLUMNS
  显示当前用户所有分区表的分区列信息:USER_PART_KEY_COLUMNS
  显示子分区列 显示数据库所有分区表的子分区列信息:DBA_SUBPART_KEY_COLUMNS
  显示当前用户可访问的所有分区表的子分区列信息:ALL_SUBPART_KEY_COLUMNS
  显示当前用户所有分区表的子分区列信息:USER_SUBPART_KEY_COLUMNS


5.临时表使用情况监控

select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE'; 
select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;

select * from v$TEMP_SPACE_HEADER
--select * from v$tempstat
select * from v$tempfile
 
--oracle 查看表空间使用率(包括临时表)
select * from ( 
Select a.tablespace_name, 
to_char(a.bytes/1024/1024,'99,999.999') total_bytes, 
to_char(b.bytes/1024/1024,'99,999.999') free_bytes, 
to_char(a.bytes/1024/1024 - b.bytes/1024/1024,'99,999.999') use_bytes, 
to_char((1 - b.bytes/a.bytes)*100,'99.99') || '%' use 
from (select tablespace_name, 
sum(bytes) bytes 
from dba_data_files 
group by tablespace_name) a, 
(select tablespace_name, 
sum(bytes) bytes 
from dba_free_space 
group by tablespace_name) b 
where a.tablespace_name = b.tablespace_name 
union all 
select c.tablespace_name, 
to_char(c.bytes/1024/1024,'99,999.999') total_bytes, 
to_char( (c.bytes-d.bytes_used)/1024/1024,'99,999.999') free_bytes, 
to_char(d.bytes_used/1024/1024,'99,999.999') use_bytes, 
to_char(d.bytes_used*100/c.bytes,'99.99') || '%' use 
from 
(select tablespace_name,sum(bytes) bytes 
from dba_temp_files group by tablespace_name) c, 
(select tablespace_name,sum(bytes_cached) bytes_used 
from v$temp_extent_pool group by tablespace_name) d 
where c.tablespace_name = d.tablespace_name 
)


 

 

 

 



oracle数据字典等常用查询操作

1、查询表操作 各个权限的表: 其中表有三个权限的视图, select count(*) from dba_tables; select count(*) from dba_objects wher...
  • jc_benben
  • jc_benben
  • 2017年03月01日 16:06
  • 1210

oracle常用数据字典和SQL语句总结

一、Oracle数据字典   数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等。当用户在对数据库中...
  • u014057054
  • u014057054
  • 2016年08月18日 17:19
  • 9828

ORACLE数据字典与视图

ORACLE数据字典与视图 当ORACLE数据库系统启动后,数据字典总是可用,它驻留在SYSTEM表空间中。数据字典包含视图集,在许多情况下,每一视图集有三种视图包含有类似信息,彼此以前缀相区别...
  • makeprogresszb
  • makeprogresszb
  • 2013年12月17日 16:20
  • 1745

Oracle 数据字典 动态视图

数据字典   数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者为sys用户。   用户只能在数据字典上执行查询操作(select语句),而其维护和修改是由系统自动完成的。 ...
  • ItJavawfc
  • ItJavawfc
  • 2014年07月14日 19:14
  • 536

Oracle 数据字典视图(V$,GV$,X$)

Oracle 数据字典视图(V$,GV$,X$)  常用的几个数据字典: user_objects : 记录了用户的所有对象,包含表、索引、过程、视图等信息,以及创建时间,状态是否有效...
  • haiross
  • haiross
  • 2014年11月18日 14:30
  • 616

Oracle 数据字典视图 及 功能

!前面的为部分翻译,中间为比较实用的部分视图, 后面为具体的全部原版 -----------DBA_ DBA_2PC_NEIGHBORS                包含待处理事务进入连接和退出连...
  • windowluffy
  • windowluffy
  • 2013年12月03日 18:45
  • 624

Oracle 数据字典视图(V$,GV$,X$)

Oracle 数据字典视图(V$,GV$,X$)  常用的几个数据字典: user_objects : 记录了用户的所有对象,包含表、索引、过程、视图等信息,以及创建时间,状态是否有效等信息,...
  • wangchunyu11155
  • wangchunyu11155
  • 2016年12月14日 11:39
  • 163

Oracle 数据字典介绍与使用

select * from dictionary;   --数据字典   数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的。   比如一个表的创建者信息,创建时...
  • xiaobai51509660
  • xiaobai51509660
  • 2014年03月10日 08:54
  • 443

笔记之Oracle 数据字典视图:v$fixed_table里包含了三类对象:X$对象、基于X$表的GV$和V$视图

这就实现了数据库的引导,类似于操作系统的初始化。 (FAT)文件系统启动时的初始化也是如此,即从磁盘上加载FAT分配表到内存上。 总之,系统启动运行前要初始化,初始化即加载一些必要的数据结构(或其...
  • haiross
  • haiross
  • 2014年11月18日 15:19
  • 1430

Oracle 数据字典详解

数据库是数据的集合,数据库维护和管理这用户的数据,那么这些用户数据表都存在哪里,用户的信息是怎样的,存储这些用户的数据的路径在哪里,这些信息不属于用户的信息,却是数据库维护和管理用户数据的核心,这些信...
  • KevinwuwenboA
  • KevinwuwenboA
  • 2016年12月22日 11:51
  • 300
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Oracle 数据字典查询
举报原因:
原因补充:

(最多只允许输入30个字)