在Oracle数据库上执行数据归档的最佳方法是什么?

Rul*_*las 9 oracle archiving

我想找出存档不再需要的数据的最佳方法,以便提高应用程序性能并节省磁盘空间.根据您的经验,实现此目的的最佳方法是什么,我可以使用哪种工具?为此目的开发一个特定的内部应用程序会更好吗?

小智 5

管理归档的一种方法:

  1. 按日期范围对表进行分区,例如每月分区
  2. 随着分区变得过时,例如在 36 个月后,这些分区现在可以移动到您的数据仓库,根据您的访问需要,它可以是另一个仅包含文本文件的数据库。
  3. 移动后,可以从主数据库中删除过时的分区,因此始终只保留(例如)36 个月的当前数据。
  4. 所有这些都可以使用 SQL/Shell 脚本的组合来自动化。


Tod*_*ses -2

我会将数据导出到逗号分隔的文件中,以便可以将其导出到几乎任何数据库中。因此,如果您更改 Oracle 版本或几年后转向其他版本,您可以毫无顾虑地恢复它。

使用 SQL*Plus 的假脱机文件功能来执行此操作:http://cisnet.baruch.cuny.edu/holowczak/oracle/sqlplus/# savingoutput

  • 对于除少量数据之外的任何其他情况,这是一个糟糕的选择。它难以处理复杂的数据类型,甚至处理可能包含分隔符的简单 VARCHAR2 列。 (2认同)