Daten mit EXPORT_DATA als Dateien von Oracle Data Pump in den Objektspeicher verschieben

Sie können Daten in Oracle Data Pump-Dumpdateien exportieren, indem Sie eine Abfrage angeben.

Bei dieser Exportmethode geben Sie mit der Prozedur DBMS_CLOUD.EXPORT_DATA wie folgt eine Abfrage zur Auswahl der zu exportierenden Daten an:

  1. Stellen Sie eine Verbindung zu Ihrer Datenbank her.
  2. Speichern Sie Ihre Objektspeicherzugangsdaten mit der Prozedur DBMS_CLOUD.CREATE_CREDENTIAL.

    Beispiele:

    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password'
      );
    END;
    /
    

    Das Erstellen von Zugangsdaten für den Zugriff auf Oracle Cloud Infrastructure Object Storage ist nicht erforderlich, wenn Sie Ressourcen-Principal-Zugangsdaten aktivieren. Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen verwenden.

    Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatennamen verwenden. Beachten Sie, dass dieser Schritt nur einmal erforderlich ist, es sei denn, Ihre Objektspeicherzugangsdaten ändern sich. Nachdem Sie die Zugangsdaten gespeichert haben, können Sie denselben Zugangsdatennamen verwenden.

    Informationen zu den Parametern username und password für verschiedene Object Storage-Services finden Sie unter Prozedur CREATE_CREDENTIAL.

  3. Exportieren Sie Daten aus Autonomous Database in den Cloud-Objektspeicher als Oracle Data Pump-Dumpdatei(en), indem Sie DBMS_CLOUD.EXPORT_DATA aufrufen und den format-Parameter type auf den Wert datapump setzen. Beispiele:
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        credential_name =>'DEF_CRED_NAME',
        file_uri_list =>'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/exp01.dmp',
        format => json_object('type' value 'datapump'),
        query => 'SELECT warehouse_id, quantity FROM inventories'
     );
    END;
    /
    

    Parameter:

    • credential_name: Der Name der Zugangsdaten, die im vorherigen Schritt erstellt wurden.

    • file_uri_list: ist eine kommagetrennte Liste der Exportdateien. Die Verwendung von Platzhalter- und Ersetzungszeichen wird in file_uri_list nicht unterstützt.

    • format: Gibt den erforderlichen type-Parameter mit dem Wert datapump an und definiert optional die Optionen, die Sie für den Export mit dem ORACLE_DATAPUMP-Zugriffstreiber angeben können.

    • query: Gibt eine SELECT-Anweisung an, sodass nur die erforderlichen Daten exportiert werden. Die Abfrage bestimmt den Inhalt der Dumpdatei(en.

    In diesem Beispiel ist namespace-string der Oracle Cloud Infrastructure-Objektspeicher-Namespace und bucketname der Bucket-Name. Weitere Informationen finden Sie unter Object Storage-Namespaces.

    Hinweis

    Die Prozedur DBMS_CLOUD.EXPORT_DATA erstellt die Dumpdatei(en), die Sie in file_uri_list angeben. Die Prozedur überschreibt keine Dateien. Wenn eine Dumpdatei in der file_uri_list vorhanden ist, meldet DBMS_CLOUD.EXPORT_DATA einen Fehler. DBMS_CLOUD.EXPORT_DATA erstellt keine Buckets.

    Ausführliche Informationen zu den Parametern finden Sie unter Prozedur EXPORT_DATA.

  4. Führen Sie die erforderlichen Schritte aus, um den Oracle Data Pump-Import auszuführen und die Bereinigung vorzunehmen. Weitere Informationen finden Sie unter Dumpdateien herunterladen, Data Pump-Import ausführen und Objektspeicher löschen.

Hinweise zum Exportieren von Daten mit DBMS_CLOUD.EXPORT_DATA:

  • Die Dumpdateien, die Sie mit DBMS_CLOUD.EXPORT_DATA erstellen, können nicht mit dem Oracle Data Pump-Befehl impdp importiert werden. Abhängig von der Datenbank können Sie folgende Dateien verwenden:

    • In einer Autonomous Database können Sie die Dumpdateien mit den DBMS_CLOUD-Prozeduren verwenden, die den format-Parameter type mit dem Wert "datapump" unterstützen. Sie können die Dumpdateien mit DBMS_CLOUD.COPY_DATA importieren oder DBMS_CLOUD.CREATE_EXTERNAL_TABLE aufrufen, um eine externe Tabelle zu erstellen.

    • In jeder anderen Version von Oracle Database, wie Oracle Database 19c On Premise, können Sie die mit der Prozedur DBMS_CLOUD.EXPORT_DATA erstellten Dumpdateien mit dem Zugriffstreiber ORACLE_DATAPUMP importieren. Weitere Informationen finden Sie unter Daten mit dem Zugriffstreiber ORACLE_DATAPUMP entladen und laden.

  • Die Anzahl der Dumpdateien, die DBMS_CLOUD.EXPORT_DATA generiert, wird bei Ausführung der Prozedur bestimmt. Die Anzahl der generierten Dumpdateien hängt von der Anzahl der Dateinamen ab, die Sie im Parameter file_uri_list angeben, sowie von der Anzahl der für die Instanz verfügbaren ECPUs, dem Servicelevel und der Größe der Daten.

    Beispiel: Wenn Sie eine Autonomous Database-Instanz mit 2 ECPUs oder den low-Service verwenden, wird eine einzelne Dumpdatei ohne Parallelisierung exportiert, auch wenn Sie mehrere Dateinamen angeben. Wenn Sie eine Autonomous Database-Instanz mit 8 ECPU mit dem Service medium oder high verwenden, können die Jobs parallel ausgeführt werden. Wenn Sie mehrere Dateinamen angeben, werden mehrere Dumpdateien exportiert.

  • Der von Ihnen angegebene query-Parameterwert kann bei Bedarf eine erweiterte Abfrage sein, z.B. eine Abfrage, die Joins oder Unterabfragen enthält.