dba_dependencies的使用
最近数据中心数据库需要做清理,把一些不用的数据或表清理掉,但涉及到的应用又比较多,需要先了解应用之间的关系,使用dba_dependencies视图来查看各个表对应的应用程序。[@more@]常用的有几种情形:1、批量查看视图所依赖的表,当需要查看很多视图的时候,就会发现一个一个视图点开来看是一件多么痛苦的事。2、对于某些表,有哪些存储过程、函数、包引用了它,如果你想都不想就把一个自认为没人用的表给删除掉了,说不准马上就会有人来骂你了。在删除或清理某个表的数据之前,最好检查一下有谁的程序在用它。select *from dba_dependenc
统计表的大小--按大小倒序
统计表的大小--按大小倒序[@more@]select dense_rank() over(order by max(sizepertab) desc,segment_name asc) rank,segment_name,segment_type,tablespace_name,max(sizepertabpar)||'M',max(sizepertab)||'M'from (SELECT t1.segment_name,t1.segment_type,t1.tablespace_name,SUM(t1.bytes/1024/1024) over(partition by t1.segment_name,t1.segment_type) sizepertab,SUM(t1.bytes/1024/1024) over(partition by t1.segment_name,t1.segment_type,t1.tablespace_name) sizepertabparFROM User_Segments t1WHERE t1.segment_type like
统计当前用户所有索引的大小--按大小倒序
统计当前用户所有索引的大小--按大小倒序[@more@]SELECT t1.segment_name,t1.segment_type,t1.tablespace_name,SUM(t1.bytes)/1024/1024||'M' as "size",t2.table_owner,t2.table_nameFROM User_Segments t1,user_indexes t2WHERE (t1.segment_type = 'INDEX' or t1.segment_type = 'INDEX PARTITION')and t1.segment_name = t2.index_name(+)GROUP BY t1.segment_name,t1.segment_type,t1.tablespace_name,t2.table_owner,t2.table_nameORDER BY SUM(t1.bytes) DESC