

# タイムゾーンファイルを更新する戦略
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies"></a>

DB エンジンをアップグレードし、オプショングループに `TIMEZONE_FILE_AUTOUPGRADE` オプションを追加するオペレーションは個別に行います。`TIMEZONE_FILE_AUTOUPGRADE` オプションを追加すると、最新のタイムゾーンファイルがある場合は、タイムゾーンファイルの更新が開始されます。すぐに、または次のメンテナンスウィンドウで、次のコマンドを実行します (関連するオプションのみが表示されます)。
+ 次の RDS CLI コマンドを使用してのみ DB エンジンをアップグレードします。

  ```
  modify-db-instance --engine-version {{name}} ...
  ```
+ 次の CLI コマンドを使用してのみ `TIMEZONE_FILE_AUTOUPGRADE` オプションを追加します。

  ```
  add-option-to-option-group --option-group-name {{name}} --options OptionName=TIMEZONE_FILE_AUTOUPGRADE ...
  ```
+ 次の CLI コマンドを使用して、DB エンジンをアップグレードし、インスタンスに新しいオプショングループを追加します。

  ```
  modify-db-instance --engine-version {{name}} --option-group-name {{name}} ...
  ```

更新戦略は、データベースとタイムゾーンファイルを一緒にアップグレードするか、これらのオペレーションのいずれかのみを実行するかによって異なります。オプショングループを更新し、別の API オペレーションで DB エンジンをアップグレードすると、DB エンジンをアップグレードするときにタイムゾーンファイルの更新が現在進行中になる可能性があることに注意してください。

このセクションの例では、以下を前提とします。
+ DB インスタンスに現在関連付けられているオプショングループに、まだ `TIMEZONE_FILE_AUTOUPGRADE` が追加されていません。
+ ご使用の DB インスタンスはデータベースバージョン 19.0.0.0.ru-2019-07.rur-2019-07.r1 およびタイムゾーンファイル DSTv33 を使用しています。
+ DB インスタンスファイルシステムには、ファイル DSTv34 が含まれています。
+ リリース更新プログラム 19.0.0.0.ru-2022-10.rur-2022-10.r1 には DSTv35 が含まれています。

タイムゾーンファイルを更新するには、以下の戦略を使用できます。

**Topics**
+ [エンジンをアップグレードせずにタイムゾーンファイルを更新する](#Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.no-upgrade)
+ [タイムゾーンファイルと DB エンジンバージョンをアップグレードする](#Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade)
+ [タイムゾーンファイルを更新せずに、DB エンジンのバージョンをアップグレードする](#Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade-only)

## エンジンをアップグレードせずにタイムゾーンファイルを更新する
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.no-upgrade"></a>

このシナリオでは、データベースに DSTv33 を使用していますが、ご使用の DB インスタンスファイルシステムでは DSTv34 が使用できます。DB インスタンスで使用されるタイムゾーンファイルを DSTv33 から DSTv34 に更新しても、エンジンは DSTv35 を含む新しいマイナーバージョンにアップグレードしたくありません。

`add-option-to-option-group` コマンドで、DB インスタンスで使用されるオプショングループに `TIMEZONE_FILE_AUTOUPGRADE` を追加します。オプションをすぐに追加するか、メンテナンスウィンドウまで遅延するかを指定します。`TIMEZONE_FILE_AUTOUPGRADE` オプションを適用すると、RDS は次の処理を行います。

1. 新しい DST バージョンをチェックする。

1. DSTv34 がファイルシステムで使用可能であることを決定する。

1. タイムゾーンファイルをすぐに更新する。

## タイムゾーンファイルと DB エンジンバージョンをアップグレードする
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade"></a>

このシナリオでは、データベースに DSTv33 を使用していますが、ご使用の DB インスタンスファイルシステムでは DSTv34 が使用できます。DB エンジンを DSTv35 を含むマイナーバージョン 19.0.0.0.ru-2022-10.rur-2022-10.r1 にアップグレードし、エンジンのアップグレード中にタイムゾーンファイルを DSTv35 に更新します。したがって、目標は DSTv34 をスキップして、タイムゾーンファイルを DSTv35 に直接更新することです。

エンジンとタイムゾーンファイルを一緒にアップグレードするには、`--option-group-name` および `--engine-version` オプションを使用して `modify-db-instance` を実行します。コマンドはすぐに実行することも、メンテナンスウィンドウ に延期することもできます。`In --option-group-name` は、`TIMEZONE_FILE_AUTOUPGRADE` オプションを含むオプショングループを指定します。例えば、次のようになります。

```
aws rds modify-db-instance 
    --db-instance-identifier {{my-instance}} \
    --engine-version {{new-version}} \
    ----option-group-name {{og-with-timezone-file-autoupgrade}} \    
    --apply-immediately
```

RDS は、エンジンの 19.0.0.0.ru-2022-10.rur-2022-10.r1 へのアップグレードを開始します。`TIMEZONE_FILE_AUTOUPGRADE` オプションが適用されると、RDS は新しい DST バージョンを確認して、DSTv35 が 19.0.0.0.ru-2022-10.rur-2022-10.r1 で使用可能であることがわかると、すぐに DSTv35 に更新を開始します。

エンジンをすぐにアップグレードし、タイムゾーンファイルをアップグレードするには、オペレーションを順番に実行します。

1. 次の CLI コマンドを使用してのみ DB エンジンをアップグレードします。

   ```
   aws rds modify-db-instance \
       --db-instance-identifier {{my-instance}} \
       --engine-version {{new-version}} \
       --apply-immediately
   ```

1. 次の CLI コマンドを使用して、インスタンスにアタッチされたオプショングループに `TIMEZONE_FILE_AUTOUPGRADE` オプションを追加します。

   ```
   aws rds add-option-to-option-group \
       --option-group-name {{og-in-use-by-your-instance}} \
       --options OptionName=TIMEZONE_FILE_AUTOUPGRADE \
       --apply-immediately
   ```

## タイムゾーンファイルを更新せずに、DB エンジンのバージョンをアップグレードする
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade-only"></a>

このシナリオでは、データベースに DSTv33 を使用していますが、ご使用の DB インスタンスファイルシステムでは DSTv34 が使用できます。DB エンジンを DSTv35 を含むバージョン 19.0.0.0.ru-2022-10.rur-2022-10.r1 にアップグレードしても、タイムゾーンファイル DSTv33 を保持します。次の理由から、この戦略が必要になる場合があります。
+ データが `TIMESTAMP WITH TIME ZONE` データ型を使用しない。
+ データは `TIMESTAMP WITH TIME ZONE` データ型を使用できますが、データがタイムゾーン変更の影響を受けません。
+ 追加のダウンタイムを許容できないため、タイムゾーンファイルの更新を延期する必要があります。

戦略は、次のいずれが該当するによって異なります。
+ DB インスタンスは `TIMEZONE_FILE_AUTOUPGRADE` を含むオプショングループに関連付けられていません。`modify-db-instance` コマンドでは、RDS がタイムゾーンファイルを更新しないように、新しいオプショングループを指定しないでください。
+ DB インスタンスは現在、`TIMEZONE_FILE_AUTOUPGRADE` を含むオプショングループに関連付けられています。単一の `modify-db-instance` コマンド内で、`TIMEZONE_FILE_AUTOUPGRADE` を含まないオプショングループに DB インスタンスを関連付けてから、DB エンジンを 19.0.0.0.ru-2022-10.rur-2022-10.r1 にアップグレードします。