Aktualisierungen von Zeitzonendateien in Autonomous Database verwalten

Autonomous Database bietet mehrere Optionen zum automatischen Aktualisieren von Zeitzonendateien in einer Autonomous Database-Datenbankinstanz.

Informationen zu Aktualisierungsoptionen für Zeitzonendateien

Zur Unterstützung der Zeitzone verwendet Oracle Database Zeitzonendateien, in denen die Liste aller Zeitzonen gespeichert wird. Die Zeitzonendateien für Autonomous Database werden regelmäßig aktualisiert, um die neuesten zeitzonenspezifischen Änderungen widerzuspiegeln.

Autonomous Database bietet die folgenden Optionen zum Aktualisieren von Zeitzonendateien:

  • AUTO_DST_UPGRADE: Führt ein automatisches Upgrade der Zeitzonendateien durch und aktualisiert automatisch die Daten in Ihrer Datenbank, sodass die neuesten Zeitzonendaten verwendet werden. Diese Option erfordert, dass Sie die Autonomous Database-Instanz neu starten oder stoppen und dann starten.

  • AUTO_DST_UPGRADE_EXCL_DATA: Aktualisiert die Zeitzonendateien automatisch und aktualisiert die Daten in Ihrer Datenbank nicht automatisch, um die neuesten Zeitzonendaten zu verwenden. Wenn Sie diese Option aktivieren, werden die Zeitzonendateien auf die neueste Version upgegradet, und die Versionen werden mit der neuesten Version auf dem neuesten Stand gehalten. Für diese Option ist kein Neustart der Autonomous Database-Instanz erforderlich.

Hinweis

Standardmäßig sind sowohl AUTO_DST_UPGRADE als auch AUTO_DST_UPGRADE_EXCL_DATA deaktiviert. Sie können eine oder die andere dieser Optionen aktivieren, nicht jedoch beides.

Mit jedem Release der Sommerzeit-Version (Daylight Saving Time, Sommerzeit) werden Änderungen an Sommerzeit-Dateien eingeführt, damit vorhandene Daten den neuesten Sommerzeit-Regeln entsprechen. Das Anwenden einer Änderung an den Zeitzonendateien der Datenbank wirkt sich nicht nur auf die Art und Weise aus, wie neue Daten verarbeitet werden, sondern verändert möglicherweise Daten, die in TIMESTAMP WITH TIME ZONE-Spalten gespeichert sind.

Wenn ein Lade- oder Importvorgang den folgenden zeitzonenbezogenen Fehler verursacht, weist dies darauf hin, dass die Version Ihrer Zeitzonendateien veraltet ist und Sie auf die neueste für Ihre Datenbank verfügbare Version aktualisieren müssen:

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.

Sie können das Feature AUTO_DST_UPGRADE aktivieren, mit dem eine Instanz automatisch auf die neueste verfügbare Version der Zeitzonendateien upgegradet wird. Außerdem werden die Zeilen in Ihrer Datenbank automatisch aktualisiert, sodass die neuesten Zeitzonendaten verwendet werden. Die neueste Version der Zeitzonendateien wird angewendet, und die Werte in den Spalten TIMESTAMP WITH TIME ZONE werden beim nächsten Datenbankneustart aktualisiert. Abhängig von Ihrer Datenbanknutzung kann der erforderliche Datenbankneustart Sie jedoch davon abhalten, AUTO_DST_UPGRADE zum Upgrade auf die neuesten Zeitzonendateien zu verwenden.

Sie können AUTO_DST_UPGRADE_EXCL_DATA aktivieren, um Ihre Zeitzonendateien zu aktualisieren. Mit dieser Option können Sie Ihre Datenbank sofort aktualisieren, wenn Import-/Exportfehler aufgrund einer Versionsunstimmigkeit von Zeitzonendateien auftreten (wo Sie den Fehler ORA-3940 erhalten).

Die Aktivierung von AUTO_DST_UPGRADE_EXCL_DATA in der Datenbank kann in den folgenden Fällen von Vorteil sein:

  • Die Daten auf der Instanz befinden sich in UTC, und die Datenbank wird durch Aktualisierungen der Zeitzonendatei nicht beeinträchtigt.

  • Die Instanz enthält keine Daten in den Spalten TIMESTAMP WITH TIME ZONE.

  • Daten in der Instanz verwenden Datumsangaben, die nicht mit neuen Zeitzonen- oder Sommerzeit-Policys geändert werden.

Wenn Ihre Autonomous Database-Instanz keine Zeilen enthält, die von den neuen Zeitzonenregeln negativ beeinflusst werden, und der Fehler ORA-3940 auftritt, können Sie die Option AUTO_DST_UPGRADE_EXCL_DATA aktivieren, um auf die neueste Version der Zeitzonendateien zu aktualisieren. Die Option AUTO_DST_UPGRADE_EXCL_DATA priorisiert den Erfolg von Oracle Data Pump-Jobs gegenüber den Datenkonsistenzproblemen aufgrund einer Änderung der Sommerzeit.

Unter Oracle Support-Dokument 406410.1 können Sie bestimmen, ob sich Zeitzonenänderungen auf Ihre Datenbank auswirken.

Hinweis

Oracle empfiehlt, die Option AUTO_DST_UPGRADE zu aktivieren, wenn diese Begrenzungsfälle nicht für Ihre Datenbank gelten.

Zusammenfassend lässt sich Folgendes berücksichtigen, wenn Sie automatische Zeitzonenupgrades mit AUTO_DST_UPGRADE oder AUTO_DST_UPGRADE_EXCL_DATA aktivieren:

  • Mögliche Dateninkonsistenz: Oracle empfiehlt, dass Sie die Datenbank auf der neuesten Version der Zeitzonendatei verwalten, indem Sie AUTO_DST_UPGRADE aktivieren. Mit dieser Option werden die Zeilen in der Datenbank automatisch aktualisiert, sodass die neuesten Zeitzonendaten verwendet werden.

    Mit der alternativen Option AUTO_DST_UPGRADE_EXCL_DATA können Sie die Datenbank mit der neuesten Zeitzonenversion verwalten, ohne dass eine Datenbank neu gestartet werden muss. Daten, die von den aktualisierten Zeitzonendateien betroffen sein könnten, werden jedoch nicht aktualisiert, was zu einer möglichen Dateninkonsistenz führen könnte.

  • Datenbankneustart: Oracle empfiehlt, dass Sie die Datenbank auf der neuesten Version der Zeitzonendatei verwalten, indem Sie AUTO_DST_UPGRADE aktivieren. Diese Option erfordert einen Neustart, um auf die neueste Version der Zeitzonendateien zu aktualisieren. Beim Neustart werden die Zeilen für vorhandene Daten des Datentyps TIMESTAMP WITH TIME ZONE aktualisiert, um die neueste Version zu verwenden. Die Aktivierung von AUTO_DST_UPGRADE kann sich auf die Neustartzeit der Datenbank auswirken. Ein Neustart kann im Vergleich zu einem Neustart zusätzliche Zeit erfordern, ohne dass diese Option aktiviert ist, wenn neue Zeitzonendateien vorhanden sind und Daten beim Neustart der Datenbank aktualisiert werden müssen.

    Wenn Sie AUTO_DST_UPGRADE_EXCL_DATA aktivieren, wird die Datenbank bei Aktivierung dieser Option auf die neueste Version der Zeitzonendateien upgegradet. Wenn neuere Zeitzonendateien verfügbar sind, aktualisiert Autonomous Database die Datenbank so, dass die neueste Version verwendet wird. Wenn Sie AUTO_DST_UPGRADE_EXCL_DATA aktivieren, müssen Sie die Autonomous Database-Instanz nicht neu starten, um mit der neuesten Version der Zeitzonendateien auf dem Laufenden zu bleiben.

Weitere Informationen finden Sie unter Datetime-Datentypen und Zeitzonenunterstützung.

Option "AUTO_DST_UPGRADE Time Zone File" verwenden

Autonomous Database stellt die Option AUTO_DST_UPGRADE bereit, um Zeitzonendateien automatisch in einer Autonomous Database-Datenbankinstanz zu aktualisieren.

Das Feature AUTO_DST_UPGRADE aktualisiert automatisch die Zeitzonendateien und aktualisiert automatisch die Zeilen in Ihrer Datenbank, um die neuesten Zeitzonendaten zu verwenden.

Hinweis

Standardmäßig sind sowohl AUTO_DST_UPGRADE als auch AUTO_DST_UPGRADE_EXCL_DATA deaktiviert. Sie können eine oder andere der Optionen für die automatische Aktualisierung von Zeitzonendateien aktivieren, nicht jedoch beides.

Wenn Sie AUTO_DST_UPGRADE aktivieren, wendet die Autonomous Database-Instanz automatisch Updates für Zeitzonendateien an, je nach Status der Instanz:

  • Gestoppt: Beim nächsten Startvorgang wird die Aktualisierung automatisch angewendet.

  • Verfügbar: Nach einem Neustart oder einem Stopp und anschließendem Start wird das Update automatisch angewendet.

Wenn ein Lade- oder Importvorgang zu dem folgenden zeitzonenbezogenen Fehler führt, bedeutet dies, dass Ihre Zeitzonendateien veraltet sind und Sie auf die neueste für Ihre Datenbank verfügbare Version aktualisieren müssen:

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.

So aktivieren Sie automatische Aktualisierungen von Zeitzonendateien mit AUTO_DST_UPGRADE:

  1. Aktivieren Sie das Feature AUTO_DST_UPGRADE.
    BEGIN 
       DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
            feature_name => 'AUTO_DST_UPGRADE');
    END;
    /
  2. Fragen Sie dba_cloud_config ab, um zu prüfen, ob AUTO_DST_UPGRADE aktiviert ist.
    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade';
    
    PARAM_NAME              PARAM_VALUE                              
    ----------------------- ---------------------------------------- 
    auto_dst_upgrade        enable                                   
  3. Fragen Sie dba_cloud_config ab, um die Zeitzonenversion zu prüfen.
    SELECT param_name, param_value FROM dba_cloud_config 
        WHERE LOWER(param_name) = 'latest_timezone_version';
    
    PARAM_NAME              PARAM_VALUE 
    ----------------------- ----------- 
    latest_timezone_version 38          

    Sie können die Ansicht DB_NOTIFICATIONS abfragen, um festzustellen, ob die Zeitzonenversion die neueste Version ist:

    SELECT type, time, description, expected_start_date FROM db_notifications 
       WHERE TYPE='TIMEZONE VERSION';

Wenn AUTO DST UPGRADE aktiviert ist, führt Autonomous Database ein Upgrade auf die neueste Version der Zeitzonendateien durch (wenn Sie die Datenbank das nächste Mal neu starten oder stoppen und dann starten). Die Spalten in Ihrer Datenbank mit dem Datentyp TIMESTAMP WITH TIME ZONE werden beim Neustart in die neue Zeitzonenversion konvertiert.

So deaktivieren Sie AUTO_DST_UPGRADE:

  1. Deaktivieren Sie das Feature AUTO_DST_UPGRADE:
    BEGIN 
       DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
            feature_name => 'AUTO_DST_UPGRADE');
    END;
    /
  2. Fragen Sie dba_cloud_config ab, um zu prüfen, ob AUTO_DST_UPGRADE deaktiviert ist.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade';
    
    0 rows selected.

Weitere Informationen finden Sie unter Prozedur ENABLE_FEATURE und Prozedur DISABLE_FEATURE.

Weitere Informationen finden Sie unter Datentyp TIMESTAMP WITH TIME ZONE.

Option "AUTO_DST_UPGRADE_EXCL_DATA Time Zone File" verwenden

Autonomous Database stellt die Option AUTO_DST_UPGRADE_EXCL_DATA bereit, um Zeitzonendateien automatisch in einer Autonomous Database-Datenbankinstanz zu aktualisieren.

Die AUTO_DST_UPGRADE_EXCL_DATA aktualisiert die Zeitzonendateien automatisch und führt kein automatisches Upgrade der Zeilen in der Datenbank durch, um die neuesten Zeitzonendaten zu verwenden. Wenn diese Option aktiviert ist, führt die Datenbank ein Upgrade auf die neueste Version der Zeitzonendateien durch und aktualisiert die Datenbank anschließend so, dass neue Versionen der Zeitzonendateien während des Wartungsfensters von Autonomous Database verwendet werden (sofern eine neue Version verfügbar ist). Für diese Option ist kein Neustart der Autonomous Database-Instanz erforderlich.

Hinweis

Standardmäßig sind sowohl AUTO_DST_UPGRADE als auch AUTO_DST_UPGRADE_EXCL_DATA deaktiviert. Sie können eine oder andere der Optionen für die automatische Aktualisierung von Zeitzonendateien aktivieren, nicht jedoch beides.

Wenn ein Lade- oder Importvorgang zu dem folgenden zeitzonenbezogenen Fehler führt, bedeutet dies, dass Ihre Zeitzonendateien veraltet sind und Sie auf die neueste für Ihre Datenbank verfügbare Version aktualisieren müssen:

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.

So aktivieren Sie automatische Aktualisierungen von Zeitzonendateien mit AUTO_DST_UPGRADE_EXCL_DATA:

  1. Aktivieren Sie das Feature AUTO_DST_UPGRADE_EXCL_DATA.
    BEGIN 
       DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
            feature_name => 'AUTO_DST_UPGRADE_EXCL_DATA');
    END;
    /
  2. Fragen Sie dba_cloud_config ab, um zu prüfen, ob AUTO_DST_UPGRADE_EXCL_DATA aktiviert ist.
    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade_excl_data';
    
    PARAM_NAME                   PARAM_VALUE                              
    ---------------------------- ---------------------------------------- 
    auto_dst_upgrade_excl_data    enabled                                   
  3. Fragen Sie dba_cloud_config ab, um die Zeitzonenversion zu prüfen.
    SELECT param_name, param_value FROM dba_cloud_config 
        WHERE LOWER(param_name) = 'latest_timezone_version';
    
    PARAM_NAME              PARAM_VALUE 
    ----------------------- ----------- 
    latest_timezone_version 38          

    Sie können die Ansicht DB_NOTIFICATIONS abfragen, um festzustellen, ob die Zeitzonenversion die neueste Version ist:

    SELECT type, time, description, expected_start_date FROM db_notifications 
       WHERE TYPE='TIMEZONE VERSION';

Wenn AUTO_DST_UPGRADE_EXCL_DATA aktiviert ist, führt Autonomous Database ein Upgrade auf die neueste Version der Zeitzonendateien durch und prüft und aktualisiert neue Zeitzonendateiversionen während jedes geplanten Wartungsfensters. Wenn AUTO_DST_UPGRADE_EXCL_DATA aktiviert ist, werden die Spalten in Ihrer Datenbank mit dem Datentyp TIMESTAMP WITH TIME ZONE nicht in die neue Zeitzonenversion konvertiert.

So deaktivieren Sie AUTO_DST_UPGRADE_EXCL_DATA:

  1. Deaktivieren Sie das Feature AUTO_DST_UPGRADE_EXCL_DATA:
    BEGIN 
       DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
            feature_name => 'AUTO_DST_UPGRADE_EXCL_DATA');
    END;
    /
  2. Fragen Sie dba_cloud_config ab, um zu prüfen, ob AUTO_DST_UPGRADE_EXCL_DATA deaktiviert ist.

    SELECT param_name, param_value FROM dba_cloud_config WHERE
           LOWER(param_name) = 'auto_dst_upgrade_excl_data';
    
    0 rows selected.

Weitere Informationen finden Sie unter Prozedur ENABLE_FEATURE und Prozedur DISABLE_FEATURE.

Weitere Informationen finden Sie unter Datentyp TIMESTAMP WITH TIME ZONE.