请教:关于sys.sumdelta$

表上建有基于物化视图快速刷新日志: mlog$_tabname

用sqlldr直接路径方式加载数据,mlog$日志表里面一直没有数据,导致物化视图快速刷新不了,

开始怀疑是否因为直接路径入库,buffer cache中没有表的缓存块,mlog$是否可以用内存中索引块的信息来获取数据,

后来用  insert /*+ append */ into tabname select ...测试了一下,
发现(1)即使表上建了主键索引,mlog$表也是基于主键创建,直接路径插入后,在v$BH中也可以查到索引块的信息,但是mlog$表仍然获取不到增量数据
    (2)将insert操作trace下来,不使用append插入,trace文件中都会有一步 insert into mlog$_tabname的操作
    (3)使用 append 方式的插入的trace里面,没有了 insert into mlog$_tabname,
            而多了一个 insert into sys.sumdelta$;
            完整的语句是:insert into sys.sumdelta$ (tableobj#, partitionobj#, dmloperation, scn, timestamp, lowrowid, highrowid, sequence)  
                                 values (:1, :2, :3, :4, :5, :6, :7, sys.cdc_rsid_seq$.nextval)

sys.sumdelta$的结构:
           TABLEOBJ#               NUMBER                        
           PARTITIONOBJ#        NUMBER                        
           DMLOPERATION        VARCHAR2(1)        Y               
           SCN                          NUMBER                        
           TIMESTAMP               DATE                        
           LOWROWID              ROWID                        
           HIGHROWID             ROWID                        
           SEQUENCE               NUMBER        Y               
           SPARE1                        NUMBER        Y               
           SPARE2                        NUMBER        Y               
           SPARE3                        VARCHAR2(1000)        Y               
           SPARE4                        DATE        Y

这个表里面是有数据的, 每次append插入都会在这个表中插入一条记录,但是非append方式的插入,这个表反倒没有数据生成,
我想,这里面记录的信息已经很全面了,为什么Mlog$表中还是获取不到数据呢?


因此想跟大家请教几个问题: (1)这个表的作用是什么,难道是专门用来在直接路径插入方式下维护快速刷新物化视图日志的吗?
                                         (2)为什么这里记录了相关的信息,Mlog$表中还是获取不到数据呢?
                                          (3)如果不是直接路径插入的话,日志表中又是如何获取增量数据信息的呢,是通过触发器吗?还是别的什么方式

劳烦各位高手解释的详细一点,太粗略听不明白 23.gif

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22458783/viewspace-613721/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22458783/viewspace-613721/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值