Utilizzare Oracle Data Pump per esportare dati nella proprietà DEFAULT_CREDENTIAL dell'impostazione dell'area di memorizzazione degli oggetti

Mostra i passi per esportare i dati da Autonomous Database nello storage degli oggetti cloud con Oracle Data Pump Export e impostando la proprietà DEFAULT_CREDENTIAL.

Oracle consiglia di utilizzare la versione più recente di Oracle Data Pump per esportare i dati da Autonomous Database ad altri database Oracle, poiché contiene miglioramenti e correzioni per un'esperienza migliore. Scarica l'ultima versione di Oracle Instant Client e scarica il pacchetto Tools, che include Oracle Data Pump, per la tua piattaforma da Download di Oracle Instant Client. Vedere le istruzioni di installazione nella pagina di download dell'installazione della piattaforma per i passi di installazione richiesti dopo aver scaricato Oracle Instant Client e il pacchetto Tools.

Nota

Database Actions fornisce un collegamento per Oracle Instant Client. Per accedere a questo collegamento da Azioni database, in Download fare clic su Scarica Oracle Instant Client.
  1. Connettersi all'istanza di Autonomous Database in uso.
  2. Memorizzare le credenziali dello storage degli oggetti cloud utilizzando DBMS_CLOUD.CREATE_CREDENTIAL. Ad esempio:
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'user1@example.com',
        password => 'password'
      );
    END;
    /

    I valori forniti per username e password dipendono dal servizio di storage degli oggetti cloud in uso.

    Se si esegue l'esportazione in Oracle Cloud Infrastructure Object Storage, è possibile utilizzare gli URI nativi di Oracle Cloud Infrastructure o gli URI Swift, ma le credenziali devono essere token di autenticazione. Per ulteriori informazioni, vedere CREATE_CREDENTIAL Procedura.

  3. In qualità di utente ADMIN, impostare la credenziale definita nel passo 2 come credenziale predefinita per il database. Ad esempio:
    ALTER DATABASE PROPERTY SET DEFAULT_CREDENTIAL = 'ADMIN.DEF_CRED_NAME'

    Il valore DEFAULT_CREDENTIAL non può essere un principal risorsa OCI, un principal servizio Azure, un nome risorsa Amazon (ARN) o un account servizio Google. Per ulteriori informazioni sull'autenticazione basata sul principal delle risorse, vedere Configura criteri e ruoli per accedere alle risorse.

  4. Eseguire l'esportazione di Data Pump con il parametro dumpfile impostato sull'URL di un bucket esistente nello storage degli oggetti cloud (che termina con un nome file o un nome file con una variabile di sostituzione, ad esempio exp%L.dmp). Ad esempio:
    expdp admin/password@db2022adb_high \
         filesize=5GB \
         dumpfile=default_credential:https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/exp%L.dmp \
         parallel=16 \
         encryption_pwd_prompt=yes \
         logfile=export.log \
         directory=data_pump_dir
    

    Note per i parametri Data Pump:

    • Se durante l'esportazione con expdp si è utilizzato il parametro encryption_pwd_prompt=yes, utilizzare encryption_pwd_prompt=yes e immettere la stessa password al prompt impdp specificato durante l'esportazione.

    • Il parametro dumpfile supporta i caratteri jolly %L e %l oltre ai caratteri jolly %U e %u precedenti. Ad esempio, dumpfile=export%L.dmp. Utilizzare il carattere jolly %L o %l per le esportazioni da Oracle Database Release 12.2 e successive. Questo carattere jolly espande il nome del file di dump in un numero intero incrementale di 3 cifre a 10 cifre e larghezza variabile, a partire da 100 e terminando con 2147483646.

    • Se il bucket e i dati non risiedono in un realm commerciale (OC1), in cui gli endpoint dedicati OCI non sono supportati, utilizzare il seguente formato URI per dumpfile:

      https://objectstorage.region.oraclecloud.com/n/namespace-string/b/bucketname/o/filename
    Per dumpfile, questo esempio utilizza il formato URI consigliato utilizzando gli endpoint dedicati OCI per il realm commerciale (OC1). namespace-string è lo spazio di nomi dello storage degli oggetti Oracle Cloud Infrastructure e bucketname è il nome del bucket. Per ulteriori informazioni, consulta la sezione relativa agli endpoint dedicati dello storage degli oggetti, alle aree e ai domini di disponibilità e comprensione degli spazi di nomi dello storage degli oggetti.

    La parola chiave default_credential nel parametro dumpfile è obbligatoria.

    Per ottenere le migliori prestazioni di esportazione, utilizzare il servizio di database HIGH per la connessione di esportazione e impostare il parametro parallel su un quarto del numero di ECPU (25 x conteggio ECPU). Se si utilizza il modello di computazione OCPU, impostare il parametro parallelo sul numero di OCPU (1 x conteggio OCPU).

    Per informazioni sul nome del servizio di database da connettere per eseguire l'esportazione di Data Pump, vedere Gestisci concorrenza e priorità su Autonomous Database.

    Per il formato dell'URL del file di dump per diversi servizi di storage degli oggetti cloud, vedere DBMS_CLOUD Formati URI.

    Questo esempio mostra i parametri consigliati per l'esportazione da Autonomous Database. Per questi parametri expdp, tenere presente quanto riportato di seguito.

    • Il valore massimo del parametro filesize è 10000 MB per le esportazioni di Oracle Cloud Infrastructure Object Storage.

    • Il valore massimo del parametro filesize è di 20 GB per le esportazioni di Oracle Cloud Infrastructure Object Storage Classic.

    • Se il valore filesize specificato è troppo grande, nell'esportazione viene visualizzato il messaggio di errore:

      ORA-17500: ODM err:ODM HTTP Request Entity Too Large
    • Il parametro directory specifica la directory data_pump_dir per il file di log specificato, export.log. Per ulteriori informazioni, vedere Accesso ai file di log per l'esportazione di Data Pump.

    Oracle Data Pump divide ogni parte del file di dump in chunk più piccoli per caricamenti più veloci. La console di Oracle Cloud Infrastructure Object Storage mostra più file per ogni parte del file di dump esportata. La dimensione dei file di dump effettivi verrà visualizzata come zero (0) e i relativi blocchi di file correlati come 10 MB o meno. Ad esempio:

    exp100.dmp
    exp100.dmp_aaaaaa
    exp101.dmp
    exp101.dmp_aaaaaa

    Il download del file di dump a zero byte dalla console di Oracle Cloud Infrastructure o l'utilizzo dell'interfaccia CLI di Oracle Cloud Infrastructure non fornirà i file di dump completi. Per scaricare i file di dump completi dall'area di memorizzazione degli oggetti, utilizzare uno strumento che supporti Swift come curl e fornire il login utente e il token di autenticazione Swift. Ad esempio:

    curl -O -v -X GET -u 'user1@example.com:auth_token' \
       https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/namespace-string/bucketname/exp100.dmp

    Se si importa un file con le procedure DBMS_CLOUD che supportano il parametro format type con il valore 'datapump', è necessario solo fornire il nome del file primario. Le procedure che supportano il tipo di formato 'datapump' individuano e scaricano automaticamente i blocchi.

    Quando si utilizza DBMS_CLOUD.DELETE_OBJECT, la procedura individua ed elimina automaticamente i chunk quando la procedura elimina il file primario.

  5. Eseguire i passi necessari per utilizzare l'importazione e il cleanup di Oracle Data Pump.
Nota

Per eseguire un'esportazione completa o per esportare oggetti di proprietà di altri utenti, è necessario disporre del ruolo DATAPUMP_CLOUD_EXP.

Per informazioni dettagliate sui parametri di esportazione di Oracle Data Pump, vedere Oracle Database Utilities.