保留存档重做日志 - Amazon Relational Database Service

保留存档重做日志

您可以在数据库实例上本地保留存档的重做日志,以用于 Oracle LogMiner(DBMS_LOGMNR)这类产品。保留重做日志后,您可以使用 LogMiner 分析日子。有关更多信息,请参阅 Oracle 文档中的使用 LogMiner 分析重做日志文件

要保留存档的重做日志,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_util.set_configurationset_configuration 过程具有以下参数。

参数名称 数据类型 默认值 必需 描述

name

varchar

要更新的配置的名称。

value

varchar

该配置的值。

以下示例保留 24 小时的重做日志。

begin rdsadmin.rdsadmin_util.set_configuration( name => 'archivelog retention hours', value => '24'); end; / commit;
注意

要使更改生效,必须执行提交操作。

要查看存档的重做日志为数据库实例保留多长时间,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_util.show_configuration

以下示例显示日志保留时间。

set serveroutput on EXEC rdsadmin.rdsadmin_util.show_configuration;

输出显示 archivelog retention hours 的当前设置。以下输出显示存档的重做日志保留 48 小时。

NAME:archivelog retention hours VALUE:48 DESCRIPTION:ArchiveLog expiration specifies the duration in hours before archive/redo log files are automatically deleted.

由于存档的重做日志保留在数据库实例中,因此,请确保数据库实例已为保留的日志分配足量的存储空间。要确定数据库实例上在最近 X 小时内使用的空间量,可以运行以下查询(将 X 替换为小时数)。

SELECT SUM(BLOCKS * BLOCK_SIZE) bytes FROM V$ARCHIVED_LOG WHERE FIRST_TIME >= SYSDATE-(X/24) AND DEST_ID=1;

仅在数据库实例的备份保留期大于零时,RDS for Oracle 才会生成存档的重做日志。默认情况下,备份保留期大于零。

当存档的日志保留期过期时,RDS for Oracle 将从数据库实例中删除归档的重做日志。为支持将数据库实例还原到某个时间点,Amazon RDS 会根据备份保留期在数据库实例之外保留存档的重做日志。要修改备份保留期,请参阅 修改 Amazon RDS 数据库实例

注意

在一些情况下,您可以在 Linux 上使用 JDBC 下载存档重做日志并体验长延迟时间和连接重置。在此类情况下,您的 Java 客户端上的默认随机数字生成器设置可能会引发问题。我们建议您将 JDBC 驱动程序设置为使用非阻塞的随机数字生成器。