

# 使日记表记录过期
<a name="metadata-tables-expire-journal-table-records"></a>

默认情况下，日记表中的记录不会过期。为了有助于最大限度地降低日记表的存储成本，可以启用日记表记录过期。

**注意**  
如果您在 2025 年 7 月 15 日之前创建了 S3 元数据配置，则无法对该配置启用日记表记录过期。我们建议您删除配置并重新创建配置，以便可以使日记表记录过期并创建清单表。有关更多信息，请参阅 [对在 2025 年 7 月 15 日之前创建的元数据配置启用清单表](metadata-tables-create-configuration.md#metadata-tables-migration)。

如果启用日记表记录过期，则可以设置保留日记表记录的天数。要设置此值，请指定介于 `7` 和 `2147483647` 之间的任意整数。例如，要将日记表记录保留一年，请将此值设置为 `365`。

**重要**  
日记表记录过期后无法恢复。

记录会在符合过期条件后的 24 到 48 小时内过期。将从最新的快照中移除日记表记录。可通过表维护操作来移除已删除记录的数据和存储。

如果已启用日记表记录过期，则可以随时将其禁用，以停止使日记表记录过期。

可以使用 Amazon S3 控制台、Amazon Command Line Interface（Amazon CLI）、Amazon SDK 或 Amazon S3 REST API 来使日记表记录过期。

## 如何使日记表记录过期
<a name="metadata-tables-expire-journal-table-records-procedure"></a>

### 使用 S3 控制台
<a name="metadata-tables-expire-journal-table-records-console"></a>

**使日记表记录过期**

1. 登录到 Amazon Web Services 管理控制台，然后通过以下网址打开 Amazon S3 控制台：[https://console.aws.amazon.com/s3/](https://console.amazonaws.cn/s3/)。

1. 在左侧导航窗格中，选择**通用存储桶**。

1. 选择通用存储桶，其中包含元数据表配置以及您要使其中的记录过期的日记表。

1. 在存储桶的详细信息页面上，选择**元数据**选项卡。

1. 在**元数据**选项卡上，选择**编辑**，然后选择**编辑日记表记录过期设置**。

1. 在**编辑日记表记录过期设置**页面上，在**记录过期**下选择**已启用**。

1. 设置保留日记表记录的天数。要设置**记录距离过期的天数**值，请指定介于 `7` 和 `2147483647` 之间的任意整数。例如，要将日记表记录保留一年，请将此值设置为 `365`。
**重要**  
日记表记录过期后无法恢复。

1. 在**日记表记录将在指定天数后过期**下，选中复选框。

1. 选择**保存更改**。

如果要禁用日记表记录过期，请重复上述步骤，但在步骤 6 中选择**已禁用**而不是**已启用**。

### 使用 Amazon CLI
<a name="metadata-tables-expire-journal-table-records-cli"></a>

要运行以下命令，您必须安装并配置 Amazon CLI。如果未安装 Amazon CLI，请参阅《Amazon Command Line Interface 用户指南》**中的[安装或更新最新版本的 Amazon CLI](https://docs.amazonaws.cn//cli/latest/userguide/getting-started-install.html)。

还可以从控制台中使用 Amazon CloudShell 运行 Amazon CLI 命令。Amazon CloudShell 是一个基于浏览器、经过预验证的 Shell，可以直接从 Amazon Web Services 管理控制台中启动它。有关更多信息，请参阅《Amazon CloudShell 用户指南》**中的 [What is CloudShell?](https://docs.amazonaws.cn//cloudshell/latest/userguide/welcome.html) 和 [Getting started with Amazon CloudShell](https://docs.amazonaws.cn//cloudshell/latest/userguide/getting-started.html)。

**使用 Amazon CLI 来使日记表记录过期**

要使用以下示例命令，请将 `{{user input placeholders}}` 替换为您自己的信息。

1. 创建包含日记表配置的 JSON 文件并将其保存（例如 `journal-config.json`）。以下是一个示例配置：

   要设置 `Days` 值，请指定介于 `7` 和 `2147483647` 之间的任意整数。例如，要将日记表记录保留一年，请将此值设置为 `365`。

   ```
   {
     "RecordExpiration": {
       "Expiration": "ENABLED",
       "Days": {{10}}
     }
   }
   ```

   要禁用日记表记录过期，请改为创建以下示例配置。如果 `Expiration` 设置为 `DISABLED`，则不得在配置中指定 `Days` 值。

   ```
   {
     "RecordExpiration": {
       "Expiration": "DISABLED"
     }
   }
   ```

1. 使用以下命令使通用存储桶（例如 `{{amzn-s3-demo-bucket}}`）的日记表中的记录过期：

   ```
   aws s3api update-bucket-metadata-journal-table-configuration \
   --bucket {{amzn-s3-demo-bucket}} \
   --journal-table-configuration file://./{{journal-config}}.json \
   --region {{us-east-2}}
   ```

### 使用 REST API
<a name="metadata-tables-expire-journal-table-records-rest-api"></a>

可以发送 REST 请求来使日记表记录过期。有关更多信息，请参阅 [https://docs.amazonaws.cn/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html](https://docs.amazonaws.cn/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html)。

### 使用 Amazon SDK
<a name="metadata-tables-expire-journal-table-records-sdk"></a>

在 Amazon S3 中可以使用 Amazon SDK 来使日记表记录过期。有关信息，请参阅 [list of supported SDKs](https://docs.amazonaws.cn/AmazonS3/latest/API/API_UpdateBucketMetadataJournalTableConfiguration.html#API_UpdateBucketMetadataJournalTableConfiguration_SeeAlso)。