用于存储历史数据的复制数据库

时间:2016-01-13 12:41:43

标签: database oracle database-administration oracle-streams dataguard

应用程序只处理数据库中的部分数据,其余部分是报告所必需的,但它会导致应用程序性能下降。我想在不修改数据库架构的情况下归档历史数据。

是否有可能复制数据库,从主实例中删除旧数据并定期将新更改同步到复制数据库?这样主要的"交易"数据库将是轻量级的,并且复制的数据库将包含用于报告目的的全套当前和历史数据。

您能否推荐一些工具或提供一些在Oracle上实现这一目标的技巧?

编辑: 我想知道我是否可以使用流,并以某种方式使DML处理程序忽略行上的DELETE操作(docs.oracle.com/cd/B28359_01/server.111/b28321/...),以便在数据复制期间历史行将是尽管从事务性数据库中删除,仍然保留。

1 个答案:

答案 0 :(得分:0)

您无需创建两个单独的数据库。只需创建一个事务数据库,您将保存所有事务,然后根据这些表创建视图以显示所需的数据。通过这种方式,您只需要维护一个数据库。