Kostenloses Containerimage der autonomen KI-Datenbank verwenden

Mit dem kostenlosen Containerimage der autonomen KI-Datenbank können Sie eine autonome KI-Datenbank in einem Container in Ihrer eigenen Umgebung ausführen, ohne dass Sie Zugriff auf die Oracle Cloud Infrastructure-Konsole oder das Internet benötigen.

Informationen zum kostenlosen Containerimage

Sie können von einem Repository aus auf das kostenlose Containerimage der autonomen KI-Datenbank zugreifen und es in Ihrer lokalen Umgebung ausführen.

Autonomous AI Database bietet eine vollständig verwaltete Oracle Database, die auf Oracle Cloud Infrastructure verfügbar ist. Auf Oracle Cloud Infrastructure führen Sie Lebenszyklusmanagementvorgänge aus und führen Autonomous AI Database mit der Oracle Cloud Infrastructure-Konsole aus. Außerdem stellen Sie eine Verbindung zu Ihrer Datenbank über das öffentliche Internet oder über ein privates Netzwerk her, das Sie einrichten (je nach Netzwerkkonfiguration und Sicherheitsanforderungen).

Hinweis

Autonomous AI Database unterstützt sowohl die Oracle Autonomous AI Database Free Container Image 19c- als auch die Oracle Autonomous AI Database Free Container Image 26ai-Versionen.

Das kostenlose Containerimage der autonomen KI-Datenbank bietet eine Alternative zur Ausführung einer autonomen KI-Datenbank in einem Container in Ihrer eigenen Umgebung, ohne dass Sie auf die Oracle Cloud Infrastructure-Konsole oder das Internet zugreifen müssen. Wenn Sie Autonomous AI Database in einem Container ausführen, bietet der Container eine lokale, isolierte Umgebung mit zusätzlichen Optionen für die Entwicklung, das Testen und die Exploration von Oracle Autonomous AI Database-Features.

Freie Containerimagelizenz für autonome KI-Datenbank

Beschreibt die Lizenzierung für autonomes KI-Datenbank-freies Containerimage.

Das freie Containerimage der autonomen KI-Datenbank unterliegt der Lizenzierung.

Das ausgewählte Containerimage und die gesamte Software, die darin enthalten ist, sind unter Oracle Free Use Terms and Conditions lizenziert, die im Containerimage bereitgestellt werden. Ihre Nutzung des Containers unterliegt den Bedingungen dieser Lizenzen.

Features des kostenlosen Containerimages der autonomen KI-Datenbank

Das kostenlose Containerimage der autonomen KI-Datenbank bietet viele der Features, die mit Autonomous AI Database Serverless verfügbar sind.

  • Jedes kostenlose Containerimage stellt zwei autonome KI-Datenbankinstanzen bereit, eine Instanz mit Lakehouse-Workload-Typ und eine Instanz mit dem Workload-Typ "Transaktionsverarbeitung".

  • Die Datenbank wird mit dem Workload-Typ "Transaktionsverarbeitung" oder dem Lakehouse-Workload-Typ basierend auf dem Workload-Typ gestartet, den Sie beim Hochfahren angeben.

  • Sie können Datenbankvorgänge mit dem Befehlszeilenutility adb-cli ausführen.

  • Die Ressourcenzuweisung für das kostenlose Containerimage beträgt 4 ECPUs und 20 GB Speicher. Sie ermöglicht maximal 30 gleichzeitige Datenbanksessions.

  • Jedes kostenlose Containerimage unterstützt die Nutzungsgruppen der autonomen KI-Datenbank:

    • Lakehouse-Workload: Sie verbinden sich über HIGH-, MEDIUM- oder LOW-Services

    • Arbeitslast der Transaktionsverarbeitung: Sie stellen eine Verbindung über HIGH-, MEDIUM-, LOW-, TP- oder TPURGENT-Services her

    Weitere Informationen finden Sie unter Workload-Typen für autonome KI-Datenbanken.

  • Das kostenlose Containerimage unterstützt die folgenden integrierten Datenbanktools:

    • Datenbankaktionen

    • Oracle REST Data Services (ORDS)

    • Oracle APEX

    • Oracle Database API für MongoDB

Empfehlungen und Einschränkungen für kostenlose Containerimages der autonomen KI-Datenbank

Beschreibt Anforderungen und Einschränkungen für Free Container Image.

Empfehlungen für die Ressourcenzuteilung für das freie Containerimage

Folgendes ist die empfohlene Ressourcenzuweisung für das freie Containerimage:

  • 4 CPUs

  • 8 GB Hauptspeicher

Einschränkungen für kostenloses Containerimage

  • Es gibt keine automatischen Patching- oder Wartungsfenster für das kostenlose Containerimage. Das Repository enthält die neueste Version des kostenlosen Containerimages. Prüfen Sie das Repository, um neuere Versionen von Free Container Image zu finden.

  • Die folgenden integrierten Tools für die autonome KI-Datenbank werden nicht unterstützt:

    • Grafik
    • Oracle Machine Learning
    • Datentransformationen
  • Wenn die autonome KI-Datenbank in einem Container ausgeführt wird, stellt der Container eine lokale autonome KI-Datenbankinstanz bereit. Das Containerimage enthält keine Features, die nur über die Oracle Cloud Infrastructure-Konsole oder die APIs verfügbar sind. Einige Features, die datenbankintern verfügbar sind und auch über die Oracle Cloud Infrastructure-Konsole verfügbar sind, können weiterhin über datenbankinterne Befehle verwendet werden, wie das Zurücksetzen des ADMIN-Kennworts. Im Folgenden werden einige der nicht verfügbaren Funktionen aufgeführt:

    Feature Verfügbar oder nicht verfügbar
    Backup der Instanz Nicht verfügbar
    Zeichensatz auswählen Nicht verfügbar
    Instanz klonen Nicht verfügbar
    Elastic Pool erstellen Nicht verfügbar
    Vom Kunden verwaltete Schlüssel Nicht verfügbar
    Umbenennen der Datenbank Nicht verfügbar
    Data Safe Nicht verfügbar
    Compute-Autoscaling deaktivieren Nicht verfügbar
    Integrierte Datenbanktools deaktivieren Nicht verfügbar
    Speicher-Autoscaling deaktivieren Nicht verfügbar
    Disaster-Recovery-Optionen, einschließlich Autonomous Data Guard und backupbasiertes Disaster Recovery. Nicht verfügbar
    Wallet herunterladen Nicht verfügbar
    Integrierte Datenbanktools aktivieren Nicht verfügbar
    Compute-Autoscaling aktivieren Nicht verfügbar
    Speicher-Autoscaling aktivieren Nicht verfügbar
    Elastic Pool beitreten Nicht verfügbar
    Netzwerk-ACLs Nicht verfügbar
    Oracle Cloud Infrastructure-Ereignisse Nicht verfügbar
    Performancehub Nicht verfügbar
    Private Endpunkte Nicht verfügbar
    Real Application Testing Nicht verfügbar
    Resource Principal-basierte Authentifizierung Nicht verfügbar
    Instanz neu starten Nicht verfügbar
    Instanz wiederherstellen Nicht verfügbar
    Wallet rotieren Nicht verfügbar
    Beispielschema Nicht verfügbar
    CPU und Speicher horizontal skalieren Nicht verfügbar
    CPU und Speicher vertikal skalieren Nicht verfügbar
    Instanzpatchebene auswählen Nicht verfügbar
    Instanz starten Nicht verfügbar
    Instanz stoppen Nicht verfügbar
    Hinweis

    Wenn Sie ein kostenloses Containerimage in einem Container ausführen, können Sie eine Instanz starten, eine Instanz stoppen oder eine Instanz neu starten, indem Sie den Container starten, stoppen oder neu starten.

Container Registry-Speicherorte für autonomes KI-Datenbank-freies Containerimage

Es gibt mehrere Standorte, an denen Sie das kostenlose Containerimage für Autonomous AI Database abrufen können, darunter: Oracle Cloud Infrastructure Registry (Container Registry) und GitHub.

Sie können das freie Containerimage der autonomen KI-Datenbank an mehreren Standorten abrufen. In den gezeigten Beispielen werden podman-Befehle verwendet (weitere Informationen finden Sie unter Podman).

  1. Starten Sie eine virtuelle Podman-Maschine.
    Beispiel:
    podman machine init 
    podman machine set --cpus 4 --memory 8192 
    podman machine start 
  2. Laden Sie das kostenlose Container-Image herunter.

    Oracle Cloud Infrastructure Registry:

    Beispiel: Verwenden Sie den Befehl podman, um das neueste Image des kostenlosen Containerimages abzurufen:

    podman pull container-registry.oracle.com/database/adb-free:latest-23ai
    Hinweis

    Oracle Autonomous AI Database Serverless unterstützt auch 19c-Containerimages.
    • Geben Sie für 19c-Containerimagenamen das Tag latest als Datenbankversion an.

    • Um das freie Containerimage 19c der autonomen KI-Datenbank im obigen Beispiel abzurufen, verwenden Sie den folgenden Befehl im Imagenamenstag:
      podman pull container-registry.oracle.com/database/adb-free:latest

    Im gesamten Dokument bezieht sich das Imagename-Tag auf die Version latest-23ai.

    Weitere Details und zusätzliche Informationen finden Sie unter "Oracle Autonomous AI Database Free" in Oracle Cloud Infrastructure Registry.

    GitHub Packages:

    Beispiel: Verwenden Sie den Befehl podman, um das kostenlose Containerimage abzurufen: GitHub Packages:

    podman pull ghcr.io/oracle/adb-free:latest-23ai
  3. Prüfen Sie das Image.

    Beispiel:

    podman images container-registry.oracle.com/database/adb-free:latest-23ai

Kostenloses Containerimage starten

Nachdem Sie das kostenlose Containerimage der autonomen KI-Datenbank heruntergeladen haben, können Sie das Image in einem Container starten.

Die Datenbank wird mit dem Workload-Typ "Transaktionsverarbeitung" oder dem Workload-Typ "Lakehouse" basierend auf dem angegebenen Workload-Typ gestartet.

  1. Starten Sie einen Container, um das kostenlose Containerimage auszuführen.

    Beispiel: Mit podman:

    podman run -d \
    -p 1521:1522 \
    -p 1522:1522 \
    -p 8443:8443 \
    -p 27017:27017 \
    -e WORKLOAD_TYPE='ATP' \
    -e WALLET_PASSWORD=*** \
    -e ADMIN_PASSWORD=*** \
    --cap-add SYS_ADMIN \
    --device /dev/fuse \
    --name adb-free \
    container-registry.oracle.com/database/adb-free:latest-23ai

    Befehlsnotizen:

    • Autonomous AI Database Serverless unterstützt auch 19c-Containerimages.
      • Geben Sie für 19c-Containerimagenamen das Tag latest als Datenbankversion an.

      • Um im obigen Beispiel einen Container zum Ausführen des kostenlosen Containerimages 19c der autonomen KI-Datenbank zu starten, verwenden Sie den folgenden Befehl im Imagenamenstag:
        container-registry.oracle.com/database/adb-free:latest
    • Im gesamten Dokument bezieht sich das Imagename-Tag auf die Version latest-23ai.

    • Die WORKLOAD_TYPE kann entweder ATP oder ADW sein. Der Standardwert ist ATP.

    • Standardmäßig wird die Datenbank je nach übergebenem WORKLOAD_TYPE-Wert entweder MYATP oder MYADW genannt. Wenn Sie optional einen anderen Datenbanknamen als den Standardnamen verwenden möchten, können Sie den Parameter DATABASE_NAME festlegen. Der Datenbankname darf nur alphanumerische Zeichen enthalten.

    • Beim Hochfahren des Containers wird die entsprechende MY<WORKLOAD_TYPE>.pdb heruntergeladen und aus einem öffentlichen Object Storage-Bucket integriert.

    • Das Wallet wird mit dem angegebenen WALLET_PASSWORD generiert.

    • Sie müssen die ADMIN_PASSWORD bei der ersten Anmeldung ändern.

    • Prüfen Sie die folgenden Anforderungen, wenn Sie die ADMIN_PASSWORD erstellen oder ändern:
      • Das Kennwort muss zwischen 12 und 30 Zeichen umfassen und mindestens einen Großbuchstaben, einen Kleinbuchstaben und ein numerisches Zeichen enthalten.
      • Das Kennwort darf den Benutzernamen nicht enthalten.
    • Prüfen Sie die folgenden Anforderungen, wenn Sie die WALLET_PASSWORD erstellen oder ändern:
      • Das Kennwort muss zwischen 8 und 30 Zeichen lang sein und alphabetische Zeichen in Kombination mit numerischen Zeichen oder Sonderzeichen enthalten.
    • Bei einem OFS-Mount beginnt der Container mit der Funktion SYS_ADMIN. Außerdem muss auf das virtuelle Gerät /dev/fuse zugegriffen werden können.

    • Diese -p-Optionen geben an, dass die folgenden Ports an den Containerprozess weitergeleitet werden:

      Port Beschreibung
      1.521 TLS
      1.522 mTLS
      8.443 HTTPS-Port für ORDS/APEX und Datenbankaktionen
      27.017 Mongo-API

    Wenn Sie sich hinter einem Unternehmensproxy befinden, fügen Sie -e-Optionen hinzu, um Umgebungsvariablen für Proxys anzugeben. Beispiel: Mit podman:

    podman run -d \
    -p 1521:1522 \
    -p 1522:1522 \
    -p 8443:8443 \
    -p 27017:27017 \
    -e WORKLOAD_TYPE='ATP' \
    -e WALLET_PASSWORD=*** \
    -e ADMIN_PASSWORD=*** \
    -e http_proxy=http://example-corp-proxy.com:80/ \
    -e https_proxy=http://example-corp-proxy.com:80/ \
    -e no_proxy=localhost,127.0.0.1 \
    -e HTTP_PROXY=http://example-corp-proxy.com:80/  \
    -e HTTPS_PROXY=http://example-corp-proxy.com:80/  \
    -e NO_PROXY=localhost,127.0.0.1 \
    --cap-add SYS_ADMIN \
    --device /dev/fuse \
    --name adb-free \
    container-registry.oracle.com/database/adb-free:latest-23ai

Datenbankvorgänge mit adb-cli ausführen

Mit dem Befehlszeilenutility adb-cli können Datenbankvorgänge ausgeführt werden, nachdem der Container hochgefahren und gestartet wurde.

Um adb-cli zu verwenden, können Sie den folgenden Alias zur Vereinfachung definieren:

alias adb-cli="podman exec <container_name> adb-cli"

Verfügbare Befehle

Sie können die Liste der verfügbaren Befehle mit dem folgenden Befehl anzeigen:

adb-cli --help 
Usage: adb-cli [OPTIONS] COMMAND [ARGS]... 
    ADB-S Command Line Interface (CLI) to perform container-runtime database operations 
Options: 
    -v, --version Show the version and exit. 
    --help Show this message and exit. 
Commands: 
    add-database 
    change-password 

Datenbank hinzufügen

Sie können eine Datenbank mit dem folgenden Befehl hinzufügen:

adb-cli add-database --workload-type "ATP" --admin-password "Welcome_MY_ATP_1234" 

Kennwort ändern

Sie können das Admin-Kennwort mit dem folgenden Befehl ändern:

adb-cli change-password --database-name "MYATP" 
    --old-password "Welcome_MY_ATP_1234" --new-password "Welcome_12345"

Mit einem kostenlosen Containerimage verbinden

Wenn das kostenlose Containerimage in einem Container ausgeführt wird, können Sie eine Verbindung zu einer autonomen KI-Datenbankinstanz herstellen.

Um eine Verbindung zu einer autonomen AI-Datenbankinstanz herzustellen, die in einem Container ausgeführt wird, können Sie das Wallet einrichten und eine Verbindung herstellen oder eine TLS-Wallet-lose Verbindung verwenden.

Verbindung zu ORDS, APEX oder Database Actions über ein autonomes KI-Datenbankcontainerimage herstellen

Der Container hostname wird zum Generieren selbstsignierter SSL-Zertifikate verwendet, um HTTPS-Traffic auf Port 8443 zu verarbeiten. Der Zugriff auf Oracle APEX und Database Actions kann über den Containerhost (oder einfach localhost) erfolgen.

Anwendung URL
Oracle APEX https://localhost:8443/ords/apex
Datenbankaktionen https://localhost:8443/ords/sql-developer
Hinweis

Für zusätzliche Datenbanken, die mit dem Befehl adb-cli add-database integriert werden, verwenden Sie die URL-Formate https://localhost:8443/ords/{database_name}/apex und https://localhost:8443/ords/{database_name}/sql-developer, um jeweils auf APEX und Database Actions zuzugreifen.

Verfügbare TNS-Aliasnamen für die Verbindung mit einem Containerimage einer autonomen KI-Datenbank

Sie können einen der folgenden Aliasnamen verwenden, um eine Verbindung zu einem Containerimage einer autonomen KI-Datenbank herzustellen.

Tabelle 3-18: Verfügbare TNS-Aliasnamen

Protokoll Transaktionsverarbeitungs-Workload Lakehouse-Workload
mTLS
  • myatp_medium
  • myatp_high
  • myatp_low
  • myatp_tp
  • myatp_tpurgent
  • myadw_medium
  • myadw_high
  • myadw_low
TLS
  • myatp_medium_tls
  • myatp_high_tls
  • myatp_low_tls
  • myatp_tp_tls
  • myatp_tpurgent_tls
  • myadw_medium_tls
  • myadw_high_tls
  • myadw_low_tls

Die TNS-Aliaszuordnungen für diese Verbindungszeichenfolgen befinden sich in $TNS_ADMIN/tnsnames.ora. Informationen zu den Servicenamen finden Sie unter Nebenläufigkeit und Prioritäten in der autonomen KI-Datenbank verwalten in tnsnames.ora.

Verbindung zu einem Containerimage einer autonomen KI-Datenbank mit einem Wallet herstellen

Beschreibt die Schritte zum Herstellen einer Verbindung zu einem Containerimage einer autonomen KI-Datenbank mit einem Wallet.

Führen Sie die folgenden Schritte aus, um ein Wallet einzurichten und eine Verbindung herzustellen:

  1. Kopieren Sie das generierte Wallet auf den Host.

    Wenn Sie den Container starten, generiert Autonomous AI Database ein Wallet in /u01/app/oracle/wallets/tls_wallet.

    Beispiel: Kopieren Sie das generierte Wallet in den lokalen Ordner /scratch/tls_wallet:

    podman cp adb-free:/u01/app/oracle/wallets/tls_wallet /scratch/tls_wallet

    Dadurch wird das Wallet in den Ordner /scratch/tls_wallet kopiert.

  2. Legen Sie den Wert der Umgebungsvariablen TNS_ADMIN auf das Wallet-Verzeichnis fest.

    Beispiel:

    export TNS_ADMIN=/scratch/tls_wallet
  3. Wenn Sie eine Verbindung zu einem Remotehost herstellen möchten, auf dem das kostenlose Containerimage ausgeführt wird, ersetzen Sie localhost in $TNS_ADMIN/tnsnames.ora durch den Remotehost-FQDN.

    Beispiel:

    sed -i 's/localhost/example.com/g' $TNS_ADMIN/tnsnames.ora
  4. Stellen Sie eine Verbindung zur Instanz der autonomen KI-Datenbank her.

    Beispiel: Verwenden Sie sqlplus, um eine Verbindung zur Autonomous AI Database-Instanz der Transaktionsverarbeitung-Workload herzustellen:

    sqlplus admin/password@myatp_low_tls

    Beispiel: Verwenden Sie sqlplus, um eine Verbindung zur autonomen KI-Datenbankinstanz des Lakehouse-Workloads herzustellen:

    sqlplus admin/password@myadw_low_tls

Verbindung zu einem Containerimage einer autonomen KI-Datenbank ohne Wallet (TLS) herstellen

Beschreibt die Schritte zum Herstellen einer Verbindung zu einem Containerimage einer autonomen KI-Datenbank ohne Wallet (TLS).

Um eine Verbindung ohne Wallet herzustellen, müssen Sie den Truststore Ihres Clients mit dem selbstsignierten Zertifikat aktualisieren, das beim Containerstart generiert wurde.

Führen Sie die folgenden Schritte aus, um eine TLS-Verbindung einzurichten und eine Verbindung herzustellen.

  1. Kopieren Sie /u01/app/oracle/wallets/tls_wallet/adb_container.cert aus dem Container, und aktualisieren Sie den System-Truststore.

    Beispiel:

    podman cp adb-free:/u01/app/oracle/wallets/tls_wallet/adb_container.cert adb_container.cert  
    sudo cp adb_container.cert /etc/pki/ca-trust/source/anchors 
    sudo update-ca-trust 
  2. Stellen Sie eine Verbindung zur Instanz der autonomen KI-Datenbank her.

    Beispiel: Verwenden Sie sqlplus, um eine Verbindung zur Instanz der autonomen AI-Datenbankinstanz der Transaktionsverarbeitungs-Workload herzustellen:

    sqlplus admin/password@myatp_low

    Beispiel: Verwenden Sie sqlplus, um eine Verbindung zur autonomen KI-Datenbankinstanz des Data Warehouse-Workloads herzustellen:

    sqlplus admin/password@myadw_low

Daten zwischen freien Containern der autonomen KI-Datenbank migrieren

Wenn eine neue Version des kostenlosen Containerimages verfügbar ist, können Sie Daten von einem Container in einen anderen Container migrieren.

Beispiel: Verwenden Sie vorhandene Daten, die Sie in einem Container erstellt haben, indem Sie diese Daten auf die neueste Version von Free Container Image migrieren, wenn ein neues Update verfügbar ist.

  1. Podman-Volume erstellen

    Beispiel:

    podman volume create adb_container_volume
  2. Prüfen Sie den Volume-Einhängepunkt.

    Der Einhängepunkt ist ein vom Podman verwalteter Verzeichnisspeicherort.

    podman inspect adb_container_volume
     
    [
         {
              "Name": "adb_container_volume",
              "Driver": "local",
              "Mountpoint": "/share/containers/storage/volumes/adb_container_volume/_data",
              "CreatedAt": "2023-09-11T21:23:34.305877073Z",
              "Labels": {},
              "Scope": "local",
              "Options": {},
              "MountCount": 0,
              "NeedsCopyUp": true,
              "NeedsChown": true
         }
    ]
  3. Starten Sie den Quellcontainer, und mounten Sie das Volume im Container in /u01/data.

    Beispiel:

    podman run -d \
    -p 1521:1522 \
    -p 1522:1522 \
    -p 8443:8443 \
    -p 27017:27017 \
    -e WORKLOAD_TYPE='ATP' \
    -e WALLET_PASSWORD=*** \
    -e ADMIN_PASSWORD=*** \
    --cap-add SYS_ADMIN \
    --device /dev/fuse \
    --name source_adb_container \
    --volume adb_container_volume:/u01/data \
    container-registry.oracle.com/database/adb-free:latest-23ai
    Hinweis

    Autonomous AI Database Serverless unterstützt auch 19c-Containerimages.
    • Geben Sie für 19c-Containerimagenamen das Tag latest als Datenbankversion an.

    • Um im obigen Beispiel das kostenlose Containerimage 19c der autonomen KI-Datenbank zu starten, verwenden Sie den folgenden Befehl im Tag für den Imagenamen:
      container-registry.oracle.com/database/adb-free:latest

    Im gesamten Dokument bezieht sich das Imagename-Tag auf die Version latest-23ai.

  4. In diesem Beispiel wird davon ausgegangen, dass Sie Ihre Daten bereits im Schema app_user erstellt haben.
  5. Exportieren Sie die Daten aus dem Schema von app_user in das Container-Volume.
    1. Melden Sie sich als ADMIN an, und erstellen Sie das Verzeichnis ORA_EXP_DIR, das auf /u01/data verweist.
      sqlplus admin/**************@myadw_high
       
      SQL> exec DBMS_CLOUD_CONTAINER_ADMIN.create_export_directory('/u01/data');
      
      SQL> select directory_path from dba_directories where directory_name='ORA_EXP_DIR';
      
      DIRECTORY_PATH
      --------------------------------------------------------------------------------
      /u01/data
    2. Führen Sie den Exportjob im Schemamodus und für ADMIN- und APP_USER-Schemas aus.
      SET scan off
      SET serveroutput ON
      SET escape off
        
      DECLARE
          h1 NUMBER;
          s VARCHAR2(1000):=NULL;
          errorvarchar VARCHAR2(100):= 'ERROR';
          tryGetStatus NUMBER := 0;
          success_with_info EXCEPTION;
          PRAGMA EXCEPTION_INIT(success_with_info, -31627);
      BEGIN
          h1 := dbms_datapump.OPEN(operation => 'EXPORT', job_mode => 'SCHEMA', job_name => 'EXPORT_MY_ADW_4', version => 'COMPATIBLE');
          tryGetStatus := 1;
          dbms_datapump.add_file(handle => h1, filename => 'EXPORT_MY_ADW.LOG', directory => 'ORA_EXP_DIR', filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_LOG_FILE);
          dbms_datapump.metadata_filter(handle => h1, name => 'SCHEMA_EXPR', VALUE => 'IN(''ADMIN'', ''APP_USER'')');
          dbms_datapump.add_file(handle => h1, filename => 'MY_ADW_%L.DMP', directory => 'ORA_EXP_DIR', filesize => '500M',  filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_DUMP_FILE);
          dbms_datapump.start_job(handle => h1, skip_current => 0, abort_step => 0);
          dbms_datapump.detach(handle => h1);
          errorvarchar := 'NO_ERROR';
      EXCEPTION
          WHEN OTHERS THEN
          BEGIN
              IF ((errorvarchar = 'ERROR')AND(tryGetStatus=1)) THEN
                  DBMS_DATAPUMP.DETACH(h1);
              END IF;
          EXCEPTION
          WHEN OTHERS THEN
              NULL;
          END;
          RAISE;
      END;
      /
  6. Prüfen Sie den Export.

    Listen Sie die Dateien im Container /u01/data auf.

    podman exec -it source_adb_container bash
    cd /u01/data

    Prüfen Sie das Exportlog (export log), prüfen Sie, ob Fehler aufgetreten sind und der Vorgang erfolgreich abgeschlossen wurde.

  7. Stoppen und entfernen Sie den Quellcontainer.
    podman stop source_adb_container
    podman rm source_adb_container
    Hinweis

    Die adb_container_volume wird über Containerneustarts und -entfernungen hinweg ausgeführt
  8. Starten Sie einen Zielcontainer, der dasselbe Volume im Container in /u01/data mountet.
    podman run -d \
    -p 1521:1522 \
    -p 1522:1522 \
    -p 8443:8443 \
    -p 27017:27017 \
    -e WORKLOAD_TYPE='ATP' \
    -e WALLET_PASSWORD=*** \
    -e ADMIN_PASSWORD=*** \
    --cap-add SYS_ADMIN \
    --device /dev/fuse \
    --name dest_adb_container \
    --volume adb_container_volume:/u01/data \
    container-registry.oracle.com/database/adb-free:latest-23ai
  9. Daten in Zielcontainer importieren.

    Melden Sie sich als ADMIN an, und erstellen Sie das Verzeichnis ORA_EXP_DIR, das auf /u01/data verweist.

    SQL> exec DBMS_CLOUD_CONTAINER_ADMIN.create_export_directory('/u01/data');
     
    PL/SQL procedure successfully completed.
     
    SQL> select directory_path from dba_directories where directory_name='ORA_EXP_DIR';
     
    DIRECTORY_PATH
    --------------------------------------------------------------------------------
    /u01/data
  10. Führen Sie die PL/SQL-Importbefehle aus.
    SET scan off
    SET serveroutput ON
    SET escape off
      
    DECLARE
        h1 NUMBER;
        s VARCHAR2(1000):=NULL;
        errorvarchar VARCHAR2(100):= 'ERROR';
        tryGetStatus NUMBER := 0;
        success_with_info EXCEPTION;
        PRAGMA EXCEPTION_INIT(success_with_info, -31627);
    BEGIN
        h1 := dbms_datapump.OPEN(operation => 'IMPORT', job_mode => 'SCHEMA', job_name => 'IMPORT_MY_ADW_4', version => 'COMPATIBLE');
        tryGetStatus := 1;
        dbms_datapump.add_file(handle => h1, filename => 'IMPORT_MY_ADW.LOG', directory => 'ORA_EXP_DIR', filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_LOG_FILE);
        dbms_datapump.metadata_filter(handle => h1, name => 'SCHEMA_EXPR', VALUE => 'IN(''ADMIN'', ''APP_USER'')');
        dbms_datapump.add_file(handle => h1, filename => 'MY_ADW_%L.DMP', directory => 'ORA_EXP_DIR', filesize => '500M',  filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_DUMP_FILE);
        dbms_datapump.start_job(handle => h1, skip_current => 0, abort_step => 0);
        dbms_datapump.detach(handle => h1);
        errorvarchar := 'NO_ERROR';
    EXCEPTION
        WHEN OTHERS THEN
        BEGIN
            IF ((errorvarchar = 'ERROR')AND(tryGetStatus=1)) THEN
                DBMS_DATAPUMP.DETACH(h1);
            END IF;
        EXCEPTION
        WHEN OTHERS THEN
            NULL;
        END;
        RAISE;
    END;
    /
  11. Prüfen Sie das Importlog.
  12. Auf dieser Seite prüfen Sie die Importdaten.