Daten als Oracle Data Pump-Dateien in ein Verzeichnis exportieren

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

Mit dieser Exportmethode geben Sie mit der Prozedur DBMS_CLOUD.EXPORT_DATA eine Abfrage an, um die Daten auszuwählen, die als Dumpdatei in ein Verzeichnis exportiert werden sollen.

  1. Verbinden Sie sich mit Ihrer Autonomous Database-Instanz.
  2. Verzeichnis erstellen.

    Beispiel:

    CREATE DIRECTORY export_dir AS 'export_dir';
    Weitere Informationen finden Sie unter Directory in Autonomous Database erstellen.
  3. Exportieren Sie Daten aus Autonomous Database in Ihr Verzeichnis als Oracle Data Pump-Dumpdatei(en) mit DBMS_CLOUD.EXPORT_DATA, und geben Sie den Parameter format type als datapump an. Beispiel:
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.dmp',
        format => json_object('type' value 'datapump'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    Beispiel für den Export von Daten als mehrere Data Pump-Dateien in ein Verzeichnis:

    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales1.dmp, export_dir:sales2.dmp',
        format => json_object('type' value 'datapump'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    Die Parameter sind:

    • file_uri_list: ist eine durch Komma getrennte Liste der Exportdateien. Die Verwendung von Platzhaltern und Ersetzungszeichen wird in file_uri_list nicht unterstützt.

    • format: Gibt den erforderlichen Parameter type an. Die gültigen Werte sind datapump, json, xml, csv und parquet. Außerdem werden optional die Optionen definiert, die Sie für den Export mit dem Zugriffstreiber ORACLE_DATAPUMP angeben können.

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

    Hinweis

    Mit der Prozedur DBMS_CLOUD.EXPORT_DATA werden die Dumpdateien erstellt, die Sie in file_uri_list angeben.

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

Hinweise zum Exportieren von Daten mit DBMS_CLOUD.EXPORT_DATA:

  • Das angegebene Verzeichnis muss vorhanden sein, und Sie müssen als Benutzer ADMIN angemeldet sein oder WRITE-Zugriff auf das Verzeichnis haben.

  • Die Prozedur überschreibt keine Dateien. Wenn eine Dumpdatei in file_uri_list vorhanden ist, meldet DBMS_CLOUD.EXPORT_DATA einen Fehler wie:

    ORA-31641: unable to create dump file  "/u02/exports/123.dmp"
    ORA-27038: created file already exists
  • DBMS_CLOUD.EXPORT_DATA erstellt keine Verzeichnisse.

  • Beim Verzeichnisnamen muss die Groß-/Kleinschreibung beachtet werden, wenn er in doppelte Anführungszeichen gesetzt wird.

  • Die Anzahl der Dumpdateien, die DBMS_CLOUD.EXPORT_DATA generiert, wird bei der 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 2-ECPU-Autonomous Database-Instanz oder den low-Service verwenden, wird eine einzelne Dumpdatei ohne Parallelität exportiert, selbst wenn Sie mehrere Dateinamen angeben. Wenn Sie eine 8-ECPU-Autonomous Database-Instanz mit dem Service medium oder high verwenden, können die Jobs parallel ausgeführt werden, und mehrere Dumpdateien werden exportiert, wenn Sie mehrere Dateinamen angeben.

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

  • Die Dumpdateien, die Sie mit DBMS_CLOUD.EXPORT_DATA erstellen, können nicht mit Oracle Data Pump impdp importiert werden. Je nach Datenbank können Sie diese Dateien wie folgt verwenden:

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

    • In jeder anderen 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.