cron增量导出,另一台cron ftp 然后增量导入应该可以

解决方案 »

  1.   

    假设目前数据库容量为A,一个月后增量为Ai,housekeep程序周期为1个月,则删除的数据容量为Ad。
    则一个月后A=A+Ai-Ad;
    而另一数据库为B,应该B=A+Ai。
    所以不能实时更新B,只能伴随housekeep程序且在其之前做更新。
    由于
    Any modification (UPDATE, INSERT, or DELETE) on a table automatically qualifies that table for incremental Export.
    而且
    If you use cumulative and incremental Exports, you should periodically perform a complete Export to create a base backup. Following the complete Export, perform frequent incremental Exports and occasional cumulative Exports. After a given period of time, you should begin the cycle again with another complete Export. 
    增量导出可能不行。这确实是个难题。我想只能辛苦辛苦,在每张表中加上exp_date字段,做存储过程将大于等于该日的数据导入到B,并更新exp_date。这样删除以前的数据不会影响到该过程,自然也
    不会影响到B。一家之言,姑妄听之
      

  2.   

    snowy_howe(天下有雪)不释为一个好办法,但如果是开发商还需要不断更新(连表结构不时也要更新,如“中国税收管理信息系统”),你将怎么办?一偶之见,是否可以利用oracle可同时存在多个触发器的特点,建立一个永远不会与这个系统重名的insert触发器,利用颁布分式事务来完成?
      

  3.   

    给每个表增加一个时间字段是一个不错的建议,但要更改大量的表结构。
    是否可以这样,在建立一个HIST表,保存当天的所有记录,并且每日复制到B数据库后,清除。
      

  4.   

    每天把主数据库中的前一天更新的数据在第二天早上导入到从数据库中不行吗?
    主数据库housekeeping时,对从数据库不操作有什么影响吗?
      

  5.   

    我有一个小建仪,你可以用过程,然后用job,定时传输(insert到b库中,选择业务少的时间传输即可),
      

  6.   

    关键在于怎么导入!
    一般我导入(完全备份)时,为保证数据准确性,先删除用户或清除库,
    再进行导入。
    刚才我测试了一下,如果用删除数据后的备份去IMP到从数据库,那么会报
    违反唯一性约束错误,参数选择了忽略创建错误也不行。这种恢复应该
    是插入式的,应该不会因为主数据库删除了数据而在导入时将从数据库
    的数据删除(显然的)。但是如果主数据库更新了数据,也不会导入到
    从数据库里,怎么解决呢?
      

  7.   

    用ufile将要导出的数据生成txt文件,作一个shell用sqlldr导入,这个导入速度很快,我现在的电信业务也是这样,将生成的文件按一定名字保存,晚上将文件导入到另一服务器,然后将主数据库的删除,以便 主服务器的数据不是很多,
      

  8.   

    业务机--->快照--->备份机临时表--->备份机正式备份表业务机 有 周期型的  housekeep程序备份机临时表 与业务机 同步写1程序或job,每天从备份机临时表提取数据 到备份机正式备份表备份机正式备份表 数据永远追加,不删除
      

  9.   

    我在使用中,发现ORACLE触发器在大批量数据更新的时候,有时候会出现一些BUG。
    不知道大家有没有碰到过?
    这个问题,还是在应用程序上想办法来实现,对表加入一些标志位来控制。
      

  10.   

    我这里有数据集成的中间件,完全可以解决你的问题,你要吗?
    MSN  [email protected]
    QQ:195553308
      

  11.   

    发表一点不成熟的想法:
    既然是业务数据,根据我的经验,业务数据记录都是有处理时间的
    既然是用户的需求,搞一个从数据库,应该两台数据库主机会在同一网段,就是说在主从数据库之间建立链接是可行的有了上面的条件,我觉得在两个数据库之间建立链接,然后作一个job,每天从主库表里insert into 从数据库表 select 数据 from 主数据库相应表表 where 处理时间> 从数据库相应表.处理时间 
    这个方法在处理结果上是可以满足楼主所提需求的,但是如果业务数据量每天增长很快很多,在效率上我就没有测试过,不知能不能满足现实的需求;这个方法不涉及到exp/imp的唯一性约束和很多其他的约束
      

  12.   

    个人认为,既然是删除了用户,再建立用户IMP
    exp/imp的唯一性约束和很多其他的约束,还会存在?
    如果存在也就是说主数据库的数据都存在有问题了。
    用job,可以保证现有的数据库数据同步,怎么同步还要看楼主
    要同步那些数据了,在存储过程里面实现,