Autonomous Databaseでのタイムゾーン・ファイルの更新の管理
- タイムゾーン・ファイルの更新オプションについて
タイム・ゾーン・サポートでは、Oracle Databaseはすべてのタイム・ゾーンのリストを格納するタイム・ゾーン・ファイルを使用します。 Autonomous Databaseのタイムゾーン・ファイルは、最新のタイムゾーン固有の変更を反映するように定期的に更新されます。 - AUTO_DST_UPGRADEタイムゾーン・ファイル・オプションの使用
Autonomous Databaseは、Autonomous Databaseデータベース・インスタンスのタイムゾーン・ファイルを自動的に更新するAUTO_DST_UPGRADE
オプションを提供します。 - AUTO_DST_UPGRADE_EXCL_DATAタイムゾーン・ファイル・オプションの使用
Autonomous Databaseは、Autonomous Databaseデータベース・インスタンスのタイムゾーン・ファイルを自動的に更新するAUTO_DST_UPGRADE_EXCL_DATA
オプションを提供します。
親トピック: サービスの管理
タイムゾーン・ファイルの更新オプションについて
タイム・ゾーン・サポートでは、Oracle Databaseはすべてのタイム・ゾーンのリストを格納するタイム・ゾーン・ファイルを使用します。 Autonomous Databaseのタイムゾーン・ファイルは、最新のタイムゾーン固有の変更を反映するように定期的に更新されます。
Autonomous Databaseには、タイムゾーン・ファイルを更新するための次のオプションがあります:
-
AUTO_DST_UPGRADE
: タイムゾーン・ファイルを自動的にアップグレードし、データベース上のデータを自動的に更新して最新のタイムゾーン・データを使用します。 このオプションでは、Autonomous Databaseインスタンスを再起動または停止してから起動する必要があります。 -
AUTO_DST_UPGRADE_EXCL_DATA
: タイムゾーン・ファイルを自動的にアップグレードし、最新のタイム・ゾーン・データを使用するようにデータベース上のデータを自動的に更新しません。 このオプションを有効にすると、タイムゾーン・ファイルが最新バージョンにアップグレードされ、バージョンが最新バージョンで最新の状態に保たれます。 このオプションでは、Autonomous Databaseインスタンスを再起動する必要はありません。
ノート:
デフォルトでは、AUTO_DST_UPGRADE
とAUTO_DST_UPGRADE_EXCL_DATA
の両方が無効になっています。 これらのオプションのどちらか一方を有効にできますが、両方を有効にすることはできません。
すべての夏時間(DST)バージョン・リリースで、既存のデータが最新のDSTルールに準拠するように、DSTファイルの変更が導入されています。 データベースのタイムゾーン・ファイルへの変更の適用は、新しいデータの処理方法に影響を与えるだけでなく、TIMESTAMP WITH TIME ZONE
列に格納されているデータを変更する可能性があります。
ロードまたはインポート操作によって次のタイム・ゾーン関連エラーが発生した場合、これは、タイム・ゾーン・ファイルのバージョンが古く、データベースで使用可能な最新バージョンに更新する必要があることを示します:
ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version y
into a target database with TSTZ version n.
使用可能な最新バージョンのタイム・ゾーン・ファイルを使用するようにインスタンスを自動的にアップグレードするAUTO_DST_UPGRADE
機能を有効にし、データベースの行を自動的に更新して最新のタイム・ゾーン・データを使用できます。 最新バージョンのタイムゾーン・ファイルが適用され、TIMESTAMP WITH TIME ZONE
列の値は次回のデータベース再起動時に更新されます。 ただし、データベースの使用状況によっては、必要なデータベースの再起動によって、AUTO_DST_UPGRADE
を使用した最新のタイムゾーン・ファイルへのアップグレードが制限される場合があります。
AUTO_DST_UPGRADE_EXCL_DATA
を有効にして、タイムゾーン・ファイルを更新できます。 このオプションを使用すると、タイム・ゾーン・ファイルのバージョンが一致しない(ORA-3940
エラーが表示される)ためにインポート/エクスポート・エラーが発生した場合に、すぐにデータベースを更新できます。
データベースでAUTO_DST_UPGRADE_EXCL_DATA
を有効にすると、次の場合に役立ちます:
-
インスタンスのデータはUTCで、データベースはDSTタイムゾーン・ファイルの更新の影響を受けません。
-
インスタンスには、
TIMESTAMP WITH TIME ZONE
列のデータがありません。 -
インスタンスのデータでは、新しいタイムゾーンまたは夏時間のポリシーで変更されていない日付が使用されます。
この場合、Autonomous Databaseインスタンスに、新しいタイム・ゾーン・ルールによって悪影響を受けた行が含まれず、ORA-3940
エラーが発生した場合は、AUTO_DST_UPGRADE_EXCL_DATA
オプションを有効にして、最新バージョンのタイム・ゾーン・ファイルに更新できます。 AUTO_DST_UPGRADE_EXCL_DATA
オプションは、DSTの変更によるデータの一貫性の問題よりも、Oracle Data Pumpジョブの成功を優先します。
タイムゾーンの変更がデータベースに影響するかどうかを判断するには、「Oracle Supportドキュメント406410.1」を参照してください。
ノート:
Oracleでは、これらの制限ケースがデータベースに適用されない場合に、AUTO_DST_UPGRADE
オプションを有効にすることをお薦めします。
要約すると、AUTO_DST_UPGRADE
またはAUTO_DST_UPGRADE_EXCL_DATA
を使用して自動タイム・ゾーン・アップグレードを有効にする選択には、次の考慮事項があります:
-
考えられるデータの不整合: Oracleでは、
AUTO_DST_UPGRADE
を有効にして、データベースを最新のタイムゾーン・ファイル・バージョンでメンテナンスすることをお薦めします。 このオプションでは、データベース上の行が自動的に更新され、最新のタイム・ゾーン・データが使用されます。代替オプション
AUTO_DST_UPGRADE_EXCL_DATA
を使用すると、データベースの再起動を必要とせずに、最新のタイム・ゾーン・バージョンを使用してデータベースを維持できますが、更新されたタイム・ゾーン・ファイルの影響を受ける可能性のあるデータは更新されず、データの不整合が発生する可能性があります。 -
データベースの再起動: Oracleでは、
AUTO_DST_UPGRADE
を有効にして、データベースを最新のタイムゾーン・ファイル・バージョンでメンテナンスすることをお薦めします。 このオプションでは、最新のタイムゾーン・ファイルのバージョンにアップグレードするために再起動が必要であり、再起動時にTIMESTAMP WITH TIME ZONE
データ型の既存データの行が最新バージョンを使用するように更新されます。AUTO_DST_UPGRADE
を有効にすると、データベースの再起動時間に影響する可能性があります。 新しいタイム・ゾーン・ファイルがあり、データベースの再起動時に更新する必要があるデータがある場合、このオプションを有効にしないと、再起動に比べて追加の時間が必要になることがあります。AUTO_DST_UPGRADE_EXCL_DATA
を有効にすると、このオプションを有効にすると、データベースはタイムゾーン・ファイルを最新バージョンにアップグレードし、メンテナンス・ウィンドウごとに新しいタイムゾーン・ファイルが使用可能な場合、Autonomous Databaseは最新バージョンを使用するようにデータベースを更新します。AUTO_DST_UPGRADE_EXCL_DATA
を有効にしても、Autonomous Databaseインスタンスを再起動して最新バージョンのタイムゾーン・ファイルを保持する必要はありません。
詳細については、「日時データ型およびタイムゾーンのサポート」を参照してください。
AUTO_DST_UPGRADEタイムゾーン・ファイル・オプションの使用
AUTO_DST_UPGRADE
オプションを提供します。
AUTO_DST_UPGRADE
機能は、タイムゾーン・ファイルを自動的にアップグレードし、データベースの行を自動的にアップグレードして最新のタイムゾーン・データを使用します。
ノート:
デフォルトでは、AUTO_DST_UPGRADE
とAUTO_DST_UPGRADE_EXCL_DATA
の両方が無効になっています。 自動タイムゾーン・ファイルの更新オプションのいずれか一方を有効にできますが、両方を有効にすることはできません。
AUTO_DST_UPGRADE
を有効にすると、インスタンスの状態に応じて、Autonomous Databaseインスタンスによってタイムゾーン・ファイルの更新が自動的に適用されます:
-
停止: 次の起動操作では、更新が自動的に適用されます。
-
使用可能: 再起動後、または停止してから起動すると、更新が自動的に適用されます。
ロードまたはインポート操作によって次のタイム・ゾーン関連エラーが発生した場合、これはタイム・ゾーン・ファイルが古く、データベースで使用可能な最新バージョンに更新する必要があることを示します:
ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version n+1
into a target database with TSTZ version n.
AUTO_DST_UPGRADE
を使用してタイムゾーン・ファイルの自動更新を有効にするには:
AUTO DST UPGRADE
が有効な場合、Autonomous Databaseは最新バージョンのタイムゾーン・ファイルにアップグレードします(次回再起動したとき、またはデータベースを停止してから起動したとき)。 データ型がTIMESTAMP WITH TIME ZONE
のデータベース内の列は、再起動時に新しいタイムゾーン・バージョンに変換されます。
AUTO_DST_UPGRADE
を無効にするには:
AUTO_DST_UPGRADE
機能を無効にします:BEGIN
DBMS_CLOUD_ADMIN.DISABLE_FEATURE
( feature_name => 'AUTO_DST_UPGRADE'); END; /-
dba_cloud_config
を問い合せて、AUTO_DST_UPGRADE
が無効になっていることを確認します。SELECT param_name, param_value FROM dba_cloud_config WHERE LOWER(param_name) = 'auto_dst_upgrade'; 0 rows selected.
詳細については、「ENABLE_FEATUREプロシージャ」と「DISABLE_FEATUREプロシージャ」を参照してください。
詳細については、「TIMESTAMP WITH TIME ZONEデータ型」を参照してください。
AUTO_DST_UPGRADE_EXCL_DATAタイムゾーン・ファイル・オプションの使用
AUTO_DST_UPGRADE_EXCL_DATA
オプションを提供します。
AUTO_DST_UPGRADE_EXCL_DATA
は、タイムゾーン・ファイルを自動的にアップグレードし、最新のタイムゾーン・データを使用するようにデータベース上の行を自動的にアップグレードしません。 このオプションを有効にすると、データベースは最新バージョンのタイムゾーン・ファイルにアップグレードされ、その後、Autonomous Databaseメンテナンス・ウィンドウ中に新しいバージョンのタイムゾーン・ファイルを使用するようにデータベースをアップグレードします(新しいバージョンが使用可能な場合)。 このオプションでは、Autonomous Databaseインスタンスを再起動する必要はありません。
ノート:
デフォルトでは、AUTO_DST_UPGRADE
とAUTO_DST_UPGRADE_EXCL_DATA
の両方が無効になっています。 自動タイムゾーン・ファイルの更新オプションのいずれか一方を有効にできますが、両方を有効にすることはできません。
ロードまたはインポート操作によって次のタイム・ゾーン関連エラーが発生した場合、これはタイム・ゾーン・ファイルが古く、データベースで使用可能な最新バージョンに更新する必要があることを示します:
ORA-39405: Oracle Data Pump does not support importing from a source database with TSTZ version n+1
into a target database with TSTZ version n.
AUTO_DST_UPGRADE_EXCL_DATA
を使用してタイムゾーン・ファイルの自動更新を有効にするには:
AUTO_DST_UPGRADE_EXCL_DATA
が有効な場合、Autonomous Databaseはタイム・ゾーン・ファイルの最新バージョンにアップグレードし、スケジュール済メンテナンス・ウィンドウごとに新しいタイム・ゾーン・ファイルのバージョンをチェックおよび更新します。 AUTO_DST_UPGRADE_EXCL_DATA
を有効にすると、データ型がTIMESTAMP WITH TIME ZONE
のデータベース内の列は、新しいタイムゾーン・バージョンに変換されません。
AUTO_DST_UPGRADE_EXCL_DATA
を無効にするには:
AUTO_DST_UPGRADE_EXCL_DATA
機能を無効にします:BEGIN
DBMS_CLOUD_ADMIN.DISABLE_FEATURE
( feature_name => 'AUTO_DST_UPGRADE_EXCL_DATA'); END; /-
dba_cloud_config
を問い合せて、AUTO_DST_UPGRADE_EXCL_DATA
が無効になっていることを確認します。SELECT param_name, param_value FROM dba_cloud_config WHERE LOWER(param_name) = 'auto_dst_upgrade_excl_data'; 0 rows selected.
詳細については、「ENABLE_FEATUREプロシージャ」と「DISABLE_FEATUREプロシージャ」を参照してください。
詳細については、「TIMESTAMP WITH TIME ZONEデータ型」を参照してください。