• 查询 TOP 50 INSERTS,UPDATES,DELETES 的表


     查询 TOP 50 INSERTS,UPDATES,DELETES 的表,也就是查看系统核心表
     
    原理:一个系统的核心表会经常insert/update/delete。
     
    跑下面脚本一定要在收集统计信息之前。
     
    sys.mon_mods$ 记录还未FLUSH到mon_mods_all$的信息 (注意:该表不是实时的,需要等一会儿才会记录DML数据,但是它的刷新与sys.mon_mods_all$不一样)
    sys.mon_mods_all$ 是DBA_TAB_MODIFICATIONS的基表。
     
    收集统计信息会清空上面2个表的数据。
     
    select * from
    (
    select * from 
    (
    select * from
    (
    select u.name owner, o.name table_name, null partition_name, null subpartition_name,
           m.inserts, m.updates, m.deletes, m.timestamp,
           decode(bitand(m.flags,1),1,'YES','NO') truncated,
           m.drop_segments
    from sys.mon_mods_all$ m, sys.obj$ o, sys.tab$ t, sys.user$ u
    where o.obj# = m.obj# and o.obj# = t.obj# and o.owner# = u.user#
    union all
    select u.name, o.name, o.subname, null,
           m.inserts, m.updates, m.deletes, m.timestamp,
           decode(bitand(m.flags,1),1,'YES','NO'),
           m.drop_segments
    from sys.mon_mods_all$ m, sys.obj$ o, sys.user$ u
    where o.owner# = u.user# and o.obj# = m.obj# and o.type#=19
    union all
    select u.name, o.name, o2.subname, o.subname,
           m.inserts, m.updates, m.deletes, m.timestamp,
           decode(bitand(m.flags,1),1,'YES','NO'),
           m.drop_segments
    from sys.mon_mods_all$ m, sys.obj$ o, sys.tabsubpart$ tsp, sys.obj$ o2,
         sys.user$ u
    where o.obj# = m.obj# and o.owner# = u.user# and
          o.obj# = tsp.obj# and o2.obj# = tsp.pobj#
    ) where owner not like '%SYS%' and owner not like 'XDB'     
    union all 
    select * from
    (    
    select u.name owner, o.name table_name, null partition_name, null subpartition_name,
           m.inserts, m.updates, m.deletes, m.timestamp,
           decode(bitand(m.flags,1),1,'YES','NO') truncated,
           m.drop_segments
    from sys.mon_mods$ m, sys.obj$ o, sys.tab$ t, sys.user$ u
    where o.obj# = m.obj# and o.obj# = t.obj# and o.owner# = u.user#
    union all
    select u.name, o.name, o.subname, null,
           m.inserts, m.updates, m.deletes, m.timestamp,
           decode(bitand(m.flags,1),1,'YES','NO'),
           m.drop_segments
    from sys.mon_mods$ m, sys.obj$ o, sys.user$ u
    where o.owner# = u.user# and o.obj# = m.obj# and o.type#=19
    union all
    select u.name, o.name, o2.subname, o.subname,
           m.inserts, m.updates, m.deletes, m.timestamp,
           decode(bitand(m.flags,1),1,'YES','NO'),
           m.drop_segments
    from sys.mon_mods$ m, sys.obj$ o, sys.tabsubpart$ tsp, sys.obj$ o2,
         sys.user$ u
    where o.obj# = m.obj# and o.owner# = u.user# and
          o.obj# = tsp.obj# and o2.obj# = tsp.pobj#
    ) where owner not like '%SYS%' and owner not like '%XDB%'
    ) order by inserts desc 
    ) where rownum<=50;
  • 相关阅读:
    MySQL数据库备份
    执行SDK的aapt报错./aapt: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./aapt)
    ftp删除目录和文件,目录下有文件删除提示【550 Remove directory operation failed.】
    Spring mvc接收中文参数值乱码(tomcat配置问题)
    python3获得命令行输入的参数
    Java反射、动态加载(将java类名、方法、方法参数当做参数传递,执行方法)
    java定义object数组(可以存储String或int等多种类型)
    java方法中增加不固定参数
    ibatis和myBatis打印sql语句的log4j配置文件
    spring依赖注入之手工装配
  • 原文地址:https://www.cnblogs.com/liang545621/p/12611880.html
Copyright © 2020-2023  润新知