我在获取oracle 10g中最常用的表时遇到了困难。
我正在使用Oracle 10g版本10.2.0.4.0和EBS R12.1.3应用程序。
请帮助我整理数据库中最常用的表。
如果可能的话,我想得到tablename、owner以及在一个时间范围内访问了多少次。
我需要这个来调音。
请提供查询以获取相同的结果。
提前谢谢!

最佳答案

我知道两种方法,一种是打开所有表的监视,然后使用该统计,或者使用v$segment_statistics来分析块访问统计,类似这样,显示按访问类型表的总值排序的前50名,您应该在查询中提供目标架构名< YOURSCHEMA >

select *
  from (select rownum RN, T.*
           from (select stat.OBJECT_NAME, stat.STATISTIC_NAME, stat.VALUE AcsValue,
                         sum(value) over(partition by stat.OBJECT_NAME) Total
                    from v$segment_statistics stat
                   where owner = < YOURSCHEMA >
                     and stat.OBJECT_TYPE = 'TABLE'
                     and stat.STATISTIC_NAME in
                         ('logical reads', 'pptimized physical reads',
                          'physical read requests', 'physical reads',
                          'physical reads direct', 'physical write requests',
                          'physical writes', 'physical writes direct')
                   order by sum(value) over(partition by stat.OBJECT_NAME) desc) T) TOrd
 where TOrd.RN < 50

关于database - 如何找出Oracle 10g中最常访问或最常用的表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43384339/

10-09 04:44