首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在特定时间段后存档Oracle表数据

在特定时间段后存档Oracle表数据
EN

Stack Overflow用户
提问于 2014-05-14 20:36:06
回答 3查看 1.4K关注 0票数 0

我们需要将超过6个月的oracle表中的数据自动归档到平面文件或数据库日志中。

oracle有没有解决这个问题的现有方法,或者我们需要做一些手工工作?

也有人可以建议不同的方法来解决这个归档过程,比如编写一个批处理程序来获取超过6个月的记录,并将其写入平面文件或csv等。它可以是oracle支持的解决方案,如触发器、计划作业或编程解决方案(最好是在java中)。

请帮帮我..

EN

回答 3

Stack Overflow用户

发布于 2014-05-14 21:21:18

我不认为将数据归档到平面文件中是个好主意。考虑使用表的分区。不同的分区可以存储在不同的表空间中,因此也可以存储在不同的存储上(理论上甚至可以使用磁带存储)。

票数 0
EN

Stack Overflow用户

发布于 2014-05-14 22:04:44

您可以将Oracle12c ILM用于此About Oracle Database for ILM,它使您能够声明应该将哪些数据移动到更便宜的存储层,或者清除哪些数据。

当然,这也可以通过自定义代码来实现,将分区移动到专用表空间,这些表空间的数据文件存储在更便宜的存储上。升级到12c并使用Oracle为此目的而创建的产品会更便宜、更容易。我赞成使用Oracle ILM工具;不要低估自己代码的开发和维护工作。

票数 0
EN

Stack Overflow用户

发布于 2014-05-14 23:04:32

执行以下步骤,将分区许可成本视为额外负担,并且在归档后不需要查询归档数据。

  1. 使用查询选项对存档行进行转储(Expdp),该选项将提供6个月前的数据集。用于表中基于查询的expdp command.
  2. Delete存档行的Reference。用于表的
  3. 刷新统计信息(Dbms_stats),以解决将来的性能问题。

注意:对于未归档的数据,您可能需要卸载表(备份表并重新恢复)或启用行移动,避免了表不必要地占用空间和碎片的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23654966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档