Eseguire la migrazione dei dati mediante tablespace trasportabili

Le tablespace trasportabili consentono una migrazione efficiente di grandi volumi di dati spostando le tablespace, inclusi i dati e i metadati, da un database di origine a un database di destinazione senza richiedere l'esportazione e l'importazione complete dei dati.

Informazioni sulle tablespace trasportabili

Tablespace trasportabili è una funzione di Oracle Database che consente di spostare grandi volumi di dati tra database in modo rapido ed efficiente.

Puoi utilizzare le tablespace trasportabili con Autonomous AI Database per spostare in modo efficiente set di dati di grandi dimensioni trasportando intere tablespace gestite dall'utente da un database AI non autonomo, ad esempio un'istanza di Oracle Database on-premise o di Oracle Database Cloud Service (DBCS), anche tra piattaforme diverse. La migrazione di tablespace complete, anziché di singoli oggetti, riduce i tempi di migrazione e riduce al minimo i tempi di inattività rispetto all'esportazione e all'importazione a livello di oggetto. Questa funzione è particolarmente utile per le migrazioni del data warehouse, l'archiviazione dei dati cronologici e gli aggiornamenti del database.

Le tablespace trasportabili supportano sia le tablespace cifrate che quelle non cifrate, inclusa la gestione dei wallet TDE (Transparent Data Encryption), se applicabile. Poiché Autonomous AI Database supporta solo tablespace a file unico, tutte le tablespace a file unico dell'origine vengono convertite automaticamente in tablespace a file unico durante l'operazione di trasporto.

Di seguito sono riportati i vantaggi principali delle tablespace trasportabili.
  • Portabilità tra piattaforme per uno spostamento flessibile dei dati.

  • Migrazioni più veloci rispetto all'esportazione e all'importazione convenzionali, con tempi di inattività ridotti.

  • Supporto per l'archiviazione dei dati per semplificare gli ambienti di produzione.

  • Sicurezza e integrità attraverso la convalida integrata, la corretta gestione dei metadati e l'elaborazione sicura del wallet TDE.

Requisiti indispensabili

Elenca i prerequisiti per il trasporto delle tablespace tra database.

  • Prima di eseguire la migrazione da un database AI non autonomo a un database AI autonomo, rivedi le informazioni in Note per gli utenti che migrano da altri database Oracle. Queste informazioni descrivono limitazioni e differenze comportamentali importanti che possono influire sulle operazioni di migrazione e del database post-migrazione.

  • Creare una directory intermedia sull'host in cui è in esecuzione il database di origine. Utilizzare questa directory per scaricare la utility di backup delle tablespace trasportabili e i file correlati e il modulo di backup di Oracle Database Cloud per OCI.

  • Scaricare la utility di backup delle tablespace trasportabili e i file associati nella directory del progetto. Per istruzioni sul download e l'accesso ai file necessari, consultare il repository Transportable-Tablespaces-Backup-Utility su GitHub.

  • Creare due bucket di storage degli oggetti OCI: uno per memorizzare i backup e un altro per memorizzare i metadati, ad esempio i metadati dello schema e i metadati della tablespace. Per ulteriori informazioni, vedere Creazione di un bucket di storage degli oggetti.

  • Genera una chiave di firma API. Questa chiave consente alla utility di backup delle tablespace trasportabili di eseguire l'autenticazione con lo storage degli oggetti OCI e confermare di disporre dell'autorizzazione per scrivere i backup delle tablespace dal database di origine. In caso contrario, le richieste di backup verranno rifiutate. Per ulteriori informazioni, vedere Come generare una chiave di firma API.

  • Scarica e installa Oracle Database Cloud Backup Module per OCI. Per creare il backup delle tablespace dal database di origine a Oracle Cloud Infrastructure, è innanzitutto necessario installare Oracle Database Cloud Backup Module per OCI. Scaricare il modulo da Oracle Technology Network (OTN) e installarlo sul database server. Per ulteriori informazioni, consulta la sezione Installazione di Oracle Database Cloud Backup Module per OCI.

  • Definisci gruppi dinamici e criteri per accedere allo storage degli oggetti OCI di Oracle Cloud Infrastructure con un principal risorsa, hai bisogno del principal risorsa per scaricare in modo sicuro il bundle di metadati delle tablespace di trasporto nell'Autonomous AI Database di destinazione. Per ulteriori informazioni, consulta la sezione Usa principal risorsa per accedere alle risorse di Oracle Cloud Infrastructure.

  • Le tablespace devono essere autonome. Tutti gli oggetti dipendenti devono risiedere interamente all'interno del set di tablespace da trasportare. Eseguire la query seguente per verificare il contenimento automatico:
    EXEC DBMS_TTS.TRANSPORT_SET_CHECK('HR,PROD', TRUE);
    SELECT * FROM TRANSPORT_SET_VIOLATIONS;
    Se non viene restituita alcuna riga, le tablespace sono autonome e possono essere trasportate.
  • Le tablespace devono essere impostate sulla modalità READ ONLY quando si esegue il backup finale per il trasporto, mentre possono rimanere in modalità READ WRITE per i backup incrementali. Per ulteriori informazioni, vedere Concetti di backup RMAN.

  • I database di origine e di destinazione devono avere set di caratteri uguali o compatibili e l'indianità (ordine byte) deve corrispondere tra le piattaforme. Per ulteriori informazioni, vedere Conversione dei dati nel formato Endian del sistema operativo di destinazione.

  • Esegue il provisioning del database di destinazione con spazio di storage sufficiente per i file di dati trasportati.

Per un elenco delle limitazioni aggiuntive, vedere Limitazioni sulle tablespace trasportabili.

Flusso di lavoro di migrazione mediante tablespace trasportabili

In questa sezione vengono descritti i passi per eseguire una migrazione delle tablespace trasportabili da un database AI non autonomo ad Autonomous AI Database.

Non è possibile trasportare direttamente le tablespace da un database AI non autonomo a un Autonomous AI Database. Per trasportare le tablespace, eseguire prima il backup delle tablespace dal database di origine alla posizione di storage intermedio, OCI Object Storage. Lo storage intermedio memorizza il backup dei dati e dei metadati e i file wallet TDE (Transparent Data Encryption) se la cifratura è abilitata nelle tablespace trasportate. Dopo il backup, ripristina i dati dallo storage intermedio all'Autonomous AI Database di destinazione.

Il workflow per le tablespace trasportabili include i passi riportati di seguito.

  1. Preparare l'host del database di origine per le tablespace trasportabili
    Prima di eseguire un'operazione di tablespace trasportabile, completare diversi task di impostazione per assicurarsi che l'ambiente del database di origine sia configurato correttamente:

    Questi passi preparatori garantiscono la connettività, l'autenticazione e le configurazioni di storage necessarie per un'operazione di tablespace trasportabile sicura.

    Per ulteriori informazioni, vedere Preparare l'ambiente host database di origine.

  2. Eseguire la utility di backup sull'origine

    Utilizzare la utility di backup della tablespace trasportabile fornita da Oracle, uno script basato su Python, per creare e caricare il backup della tablespace dal database di origine. Questa utility:

    • Convalida la disponibilità dell'ambiente di origine.

    • Utilizza l'esportazione di Oracle Data Pump per esportare i metadati.

    • Utilizza Oracle Recovery Manager (RMAN) per eseguire il backup dei dati delle tablespace.

    • Pacchetti di output, backup piece RMAN, metadati, file wallet TDE, se applicabile, e certificati in un archivio tar compresso (bundle di metadati delle tablespace trasportabili).

    • Carica in modo sicuro il bundle nel bucket di storage degli oggetti designato.

    • Restituisce un URL al bundle caricato, da utilizzare durante il processo di ripristino.

    • La utility richiama anche Oracle Database Cloud Backup Module per OCI per creare un wallet per le chiavi di firma API e i certificati richiesti, garantendo l'accesso sicuro allo storage degli oggetti OCI.

    • Sono supportati backup incrementali e non incrementali. Il backup non incrementale è un backup completo una tantum con tablespace in modalità di sola lettura. I backup incrementali iniziano con un backup di livello 0, seguito da uno o più backup incrementali (di livello 1) e un backup incrementale finale con spazi a schede in modalità di sola lettura. Il workflow di ripristino nell'Autonomous AI Database di destinazione dipende dal tipo di backup scelto.

    Per ulteriori informazioni, vedere Esecuzione del backup della tablespace nel database di origine: passi ed esempio.

  3. Importa tablespace in Autonomous AI Database
    Il processo di ripristino delle tablespace trasportabili nell'Autonomous AI Database di destinazione dipende dal tipo di backup delle tablespace nel database di origine:
    • Backup non incrementali

      Applica il backup non incrementale durante il provisioning di Autonomous AI Database. In questo modo vengono ripristinati i dati e importati i metadati in un unico passo.

    • Backup incrementali

      Iniziare creando un backup incrementale level 0 nel database di origine. Ripristinare il backup della tablespace level 0 dal database di origine durante il provisioning dell'Autonomous AI Database di destinazione. Dopo la creazione del database, applicare i backup incrementali successivi di livello 1 in sequenza. Durante questo processo, solo i backup piece RMAN vengono copiati nel database di destinazione. I metadati associati vengono importati dopo l'applicazione del backup incrementale finale su Autonomous AI Database di destinazione.

    Per ulteriori informazioni, vedere Trasportare tablespace in Autonomous AI Database.

Prepara l'ambiente host del database di origine

Descrive i passi necessari per impostare l'ambiente prima di eseguire le operazioni della tablespace trasportabile.

Argomenti

Creare una directory nel database di origine

Mostra i passi per creare una directory di progetto sull'host su cui è in esecuzione il database di origine. Questa directory funge da area intermedia per i file correlati alle tablespace trasportabili.

Di seguito sono riportati i passi per creare una directory di progetto.

  1. Eseguire il login all'host del database di origine in cui è in esecuzione il database Oracle di origine.

  2. Identificare una posizione appropriata con spazio sufficiente per memorizzare i file richiesti.

  3. Creare la directory. Eseguire il comando seguente per creare una nuova directory di progetto:
    mkdir -p /u01/tts_project
    
  4. Concedere le autorizzazioni appropriate per la directory. Ad esempio:

    chmod 755 /u01/tts_project
    
  5. Passare alla rubrica. Ad esempio:

    cd /u01/tts_project

Utility di backup per il download e l'impostazione delle tablespace trasportabili

Descrive la utility di backup delle tablespace trasportabili fornita da Oracle e i file correlati, nonché come scaricarli dal repository GitHub.

Oracle fornisce cinque singoli file e non è disponibile alcun programma di installazione in bundle. Scaricare tutti e cinque i file separatamente nella stessa directory, ad esempio la directory tts_project creata in precedenza sull'host del database di origine. Vengono forniti i seguenti file, ciascuno con uno scopo specifico:

  • README.md: panoramica, istruzioni per l'impostazione, esempi di utilizzo e considerazioni note. Rivedere prima questo file.

  • tts-backup-env.txt: file dei parametri utilizzato per specificare i valori di input richiesti per l'operazione di backup. Il file tts-backup-env.txt viene utilizzato per fornire tutti i parametri di input necessari per il processo di backup, inclusi dettagli quali le informazioni di connessione al database, le posizioni dell'area di memorizzazione degli oggetti, la tablespace e i nomi di schema. tts-backup.py è uno script Python che esegue il backup delle tablespace trasportabili utilizzando i parametri forniti nel file dei parametri tts-backup-env.txt.

  • tts-backup-env-sample.txt: file dei parametri di esempio. Copia e modifica per l'ambiente.

  • ttsTemplate.txt: modello per i parametri della utility, ad esempio i dettagli del database di origine, le destinazioni dello storage degli oggetti OCI e l'autenticazione.

  • tts-backup.py: utility di backup delle tablespace trasportabili basata su Python. Convalida l'origine, crea il backup, esegue il package dei metadati necessari e carica il backup nello storage degli oggetti OCI. Eseguire questa utility per eseguire il backup del database di origine; utilizza i parametri specificati nel file tts-backup-env.txt per eseguire il backup.

È possibile ottenere l'ultima utility di backup delle tablespace trasportabili e i file correlati dai pacchetti GitHub. Per istruzioni sul download e sull'accesso ai file, consultare il repository Transportable-Tablespaces-Backup-Utility.

Prima di eseguire tts-backup.py, configurare il file tts-backup-env.txt. La utility di backup delle tablespace trasportabili legge questo file per eseguire il backup; i valori dei parametri mancanti o errati causeranno l'errore del backup.

Nella tabella seguente sono elencati i parametri con la relativa descrizione e un valore di esempio.

Nome di parametro Descrizione Esempio

PROJECT_NAME

Nome del progetto tablespace di trasporto.

tts_project

DATABASE_NAME

Nome del database origine.

tts_db

TABLESPACES

Lista separata da virgole di nomi di tablespace.

Questo parametro è facoltativo e utilizza per impostazione predefinita tutte le tablespace definite dall'utente.

emp_tablespace, dept_tablespace, cust_tablespace

SCHEMAS

Lista separata da virgole di nomi di schema.

Questo parametro è facoltativo e utilizza per impostazione predefinita tutti gli schemi non SYS.

SALES, HR

Parametri connessione al database:

Nome di parametro Descrizione Esempio

HOSTNAME

Nome host del database d'origine.

db1

LSNR_PORT

Porta del listener del database di origine.

1521

DB_SVC_NAME

Nome del servizio di database per la connessione al database di origine.

tts_db

ORAHOME

Valore della Oracle home sul server che contiene il database di origine.

/opt/oracle/product/19c/dbhome_1

DBUSER

Nome utente per eseguire la connessione al database di origine. Il nome utente fornito deve disporre dei privilegi SYSDBA.

bkp_user

DBPASSWORD

Password per la connessione al database di origine.

La password fornita verrà ignorata. Verrà richiesto di immettere la password manualmente durante l'esecuzione dello script della utility di backup.

NA

DB_VERSION

La versione del database di provenienza. Le versioni supportate sono Oracle Database 19c o successive.

19c

Parametri OSS (OCI Object Storage Service): questi parametri sono necessari solo quando si utilizza il servizio OSS (OCI Object Storage Service) per memorizzare il backup e i metadati.

Nome di parametro Descrizione Esempio

TTS_BACKUP_URL

URI bucket dello storage degli oggetti OCI: destinazione per memorizzare il backup dei dati.

https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace/b/bucketname

TTS_BUNDLE_URL

URI bucket dello storage degli oggetti OCI: destinazione per memorizzare il backup dei metadati.

https://objectstorage.us-ashburn-1.oraclecloud.com/n/namespace/b/bucketname

OCI_INSTALLER_PATH

La posizione oci_install.jar per scaricare il wallet e importare tutti i certificati.

Questo parametro è facoltativo e utilizza per impostazione predefinita la directory corrente.

/home/oracle/opc_installer/oci_installer/oci_install.jar

CONFIG_FILE

Percorso dello snippet del file di configurazione che include le informazioni di autenticazione di base.

/home/oracle/OCI_CONFIG/config

COMPARTMENT_OCID

OCID compartimento dei bucket di storage degli oggetti OCI.

ocid1.compartment.oc1..xxxxx

OCI_PROXY_HOST

Server HTTP proxy

Si tratta di un parametro facoltativo.

proxy.company.com

OCI_PROXY_PORT

Porta di connessione al server proxy HTTP

Si tratta di un parametro facoltativo.

80

Parametri delle chiavi TDE (Transparent Data Encryption): questo input è necessario solo se una o più tablespace vengono cifrate mediante TDE (Transparent Data Encryption).

Nome di parametro Descrizione

TDE_WALLET_STORE_PASSWD

Password dell'area di memorizzazione wallet TDE (Transparent Data Encryption)

La password fornita verrà ignorata. Verrà richiesto di immettere la password manualmente durante l'esecuzione dello script della utility di backup.

Parametri di backup finali:

Nome di parametro Descrizione Esempio

FINAL_BACKUP

Specifica un'operazione non incrementale o indica che l'ultimo backup è un'operazione incrementale.

Specificare TRUE per eseguire un backup completo (non incrementale).

Specificare FALSE per eseguire un backup incrementale.

L'ultima operazione di backup nella sequenza incrementale deve essere eseguita con FINAL_BACKUP=TRUE per assicurarsi che i metadati vengano esportati.

TRUE

(Facoltativo) Parametri prestazioni:

Nome di parametro Descrizione

PARALLELISM

Numero di canali da utilizzare per il backup.

CPU_COUNT

Specifica il numero di CPU da utilizzare dall'istanza quando il parametro PARALLELISM non viene fornito.

Installare Oracle Database Cloud Backup Module per OCI

Descrive come scaricare e installare Oracle Database Cloud Backup Module per OCI sul database server.

Oracle Database Cloud Backup Module per OCI consente di eseguire il backup e il ripristino con OCI Object Storage utilizzando Oracle Recovery Manager (RMAN). L'installazione e l'utilizzo del modulo richiedono le credenziali Oracle Cloud. Il modulo installato viene utilizzato dalla utility di backup delle tablespace trasportabili per memorizzare in modo sicuro certificati e chiavi di autenticazione in un wallet Oracle. Il wallet viene utilizzato per eseguire il backup e il ripristino RMAN con OCI Object Storage.

Scarica il modulo da Oracle Technology Network (OTN), quindi consulta la sezione relativa all'installazione di Oracle Database Cloud Backup Module per OCI per i passi di installazione.

Configura stoccaggio per trasporto

Mostra i passi per configurare lo storage e l'accesso per le operazioni delle tablespace trasportabili.

Per eseguire un backup della tablespace trasportabile, è necessario configurare lo storage per memorizzare i file di backup e i metadati associati. La posizione di memorizzazione funge da repository intermedio per il trasporto. È necessario creare due bucket di storage degli oggetti <tts_data_bucket> e <tts_metadata_bucket>.

Configurare il bucket di storage degli oggetti OCI
  1. Connettersi a OCI Console

    Esegui il login alla console di Oracle Cloud.

    Per ulteriori informazioni, vedere Accesso a OCI Console.

  2. Creazione dei bucket di storage degli oggetti

    Per informazioni dettagliate sulla creazione di bucket di storage degli oggetti, vedere Creazione di un bucket di storage degli oggetti.

Esecuzione del backup della tablespace nel database di origine: passi ed esempio

La lista di task riportata di seguito riepiloga il processo di trasporto di una tablespace. I dettagli di ogni attività vengono forniti nell'esempio successivo.

  • Selezionare un set autonomo di tablespace.

  • Posizionare le tablespace in modalità READ-ONLY per un'operazione non incrementale o per il backup finale in un'operazione incrementale.

    Un set di tablespace trasportabili (o set trasportabile) è costituito da file di dati per il set di tablespace da trasportare e da un file di esportazione contenente informazioni strutturali (metadati) per il set di tablespace.

Esempio

Le procedure per il trasporto di una tablespace sono illustrate nell'esempio seguente. Questo esempio presuppone l'esistenza dei file di dati e delle tablespace mostrate di seguito:

Tablespace File di dati

SALES_1

/u01/app/oracle/oradata/salesdb/sales_101.dbf

SALES_2

/u01/app/oracle/oradata/salesdb/sales_201.dbf

Task 1: verificare che le tablespace siano autocontenute

Ci possono essere dipendenze logiche o fisiche tra gli oggetti nel set trasportabile e quelli al di fuori del set. È possibile trasportare solo tablespace autonome. Di seguito sono riportati alcuni esempi di violazioni delle tablespace con contenuto automatico.
  • Un indice all'interno del set di tablespace è per una tabella all'esterno del set di tablespace.

  • Una tabella partizionata è parzialmente contenuta nel set di tablespace. Il set di tablespace che si desidera copiare deve contenere tutte le partizioni di una tabella partizionata oppure nessuna delle partizioni di una tabella partizionata.

  • Una tabella all'interno del set di tablespace contiene una colonna LOB che punta ai LOB all'esterno del set di tablespace.

Per determinare se un set di tablespace è autonomo, eseguire il richiamo della procedura TRANSPORT_SET_CHECK nel pacchetto fornito da Oracle DBMS_TTS. Ad esempio:

EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('sales_1,sales_2', TRUE);

Il pacchetto verifica che tutti gli oggetti dipendenti (come indici, vincoli o partizioni) esistano interamente all'interno del set di tablespace da trasportare. Non esiste alcuna dipendenza tra spazi che impedisca il trasporto corretto.

Dopo aver eseguito la procedura, eseguire una query sulla vista TRANSPORT_SET_VIOLATIONS per visualizzare eventuali violazioni. Ad esempio:
SELECT * FROM TRANSPORT_SET_VIOLATIONS;
In questo esempio sono elencate le violazioni rilevate durante un controllo del set di trasporto.

Task 2: Creare il backup

Questo task presuppone che tutti i prerequisiti richiesti per questo passo siano già stati completati. Per ulteriori informazioni, vedere Preparare l'ambiente host database di origine.

  • Passare alla directory Project e aprire il file dei parametri tts-backup-env.txt. Fornire l'input necessario nel file dei parametri. Ad esempio:

    [DEFAULT]
    ...
    
    PROJECT_NAME=tts_project
    DATABASE_NAME=orclpdb1
    TABLESPACES=sales_1,sales_2
    SCHEMAS=SALES
    ...
    
    HOSTNAME=<host>
    LSNR_PORT=1521
    DB_SVC_NAME=tts_db
    ORAHOME=/opt/oracle/product/19c/dbhome_1
    DBUSER=USER
    DB_VERSION=19c
    
    ...
    
    TTS_BACKUP_URL=https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_data_bucket
    TTS_BUNDLE_URL=https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket
    OCI_INSTALLER_PATH=/home/oracle/opc_installer/oci_installer/oci_install.jar
    CONFIG_FILE=/home/oracle/OCI_CONFIG/config
    COMPARTMENT_OCID=ocid1.compartment.oc1..xxxxx
    OCI_PROXY_HOST=proxy.company.com
    OCI_PROXY_PORT=80
    
    ...
  • Dopo aver configurato il file dei parametri, è possibile eseguire facoltativamente un'esecuzione manuale dello script tts-backup.py. L'esecuzione di un'esecuzione a secco consente di verificare che l'host del database di origine sia configurato correttamente e pronto per l'operazione di tablespace trasportabile. Questo processo verifica la presenza di eventuali prerequisiti mancanti, verifica la connettività alla destinazione di storage designata e verifica che tutti i parametri richiesti siano impostati correttamente. L'esecuzione di un'esecuzione a secco prima di avviare il backup effettivo consente di identificare e risolvere in anticipo i potenziali problemi, riducendo il rischio di errori durante l'operazione della tablespace trasportabile.

    Eseguire il comando seguente per eseguire l'esecuzione manuale del backup. Fornire la password per l'utente del database che esegue il backup. La password dell'area di memorizzazione wallet TDE è obbligatoria solo se le tablespace sono cifrate:
    $ python3 /u01/tts_project/tts-backup.py --DRY_RUN=TRUE

    Verrà richiesto di immettere la password del database e, se necessario, anche la password TDE.

  • Dopo aver completato l'esecuzione manuale e aver risolto gli errori rilevati, eseguire lo script tts-backup.py per avviare il backup del database di origine.

    $ python3 /u01/tts_project/tts-backup.py

    Verrà richiesto di immettere la password del database e, se necessario, anche la password TDE.

    In questo esempio viene eseguito lo script Python Transportable Tablespaces Backup Utility per eseguire il backup del database di origine. A seconda del valore del parametro FINAL_BACKUP, il backup può essere incrementale o non incrementale.

    Il parametro Project_Directory specifica il percorso completo della directory in cui sono memorizzate la utility di backup delle tablespace trasportabili (tts-backup.py) e il file dei parametri (tts-backup-env.txt).

    Nota

    Prima di eseguire il comando, assicurarsi che il file tts-backup-env.txt sia configurato con gli input corretti (ad esempio, dettagli dello storage degli oggetti OCI, URL del bucket e parametri del database). Lo script tts-backup.py convalida gli input, esegue i controlli sul database di origine, quindi avvia il processo di backup. Se FINAL_BACKUP è impostato su TRUE, lo script esporterà i metadati della tablespace e dello schema utilizzando la utility di esportazione di Data Pump.
  • Una volta completato correttamente, lo script carica i backup dei dati della tablespace dal database di origine nel bucket di storage degli oggetti OCI. Il backup può essere incrementale o non incrementale, a seconda del tipo di backup selezionato. Un backup non incrementale è costituito da tutti i dati della tablespace in un point-in-time specifico, fornendo un backup completo per l'operazione di ripristino. Un backup incrementale è costituito da un backup di livello 0, che funge da baseline, e da uno o più backup incrementali successivi (livello 1), ciascuno dei quali include le modifiche rispetto al backup precedente. Tuttavia, quando si esegue il ripristino da backup incrementali, è necessario applicare il backup di livello 0 e tutti i backup incrementali successivi in sequenza per garantire la coerenza dei dati.

    Lo script crea inoltre un bundle di metadati delle tablespace trasportabili compresso contenente i metadati necessari e, se applicabile, i file wallet e lo carica nel bucket di metadati dello storage degli oggetti OCI.

    URL di esempio per il backup non incrementale:
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_bkp.tgz

    URL di esempio per il backup incrementale:

    Si noti che ogni URL include il livello di backup incrementale nel nome del bundle di metadati, ad esempio, ⁇ level_0, ⁇ level_1 o ⁇ final_bkp. Ciò consente di identificare e fare riferimento rapidamente a ogni backup set durante il processo di ripristino. Assicurarsi di applicare ogni backup incrementale in ordine, a partire dal backup level 0 e procedere attraverso ogni backup successivo fino al backup finale.
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_0.tgz
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_1.tgz

    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_level_n.tgz
    https://objectstorage.region.oraclecloud.com/n/namespace/b/tts_metadata_bucket/orclpdb1_final_bkp.tgz

Trasportare le tablespace in Autonomous AI Database

Descrive come eseguire la migrazione dei dati in Autonomous AI Database utilizzando tablespace trasportabili.

Il processo di migrazione delle tablespace trasportabili nell'Autonomous AI Database di destinazione dipende dal fatto che il backup della tablespace dal database di origine sia incrementale o non incrementale.

Nota

Il trasporto delle tablespace in Autonomous AI Database è supportato solo quando si esegue il provisioning di una nuova istanza di Autonomous AI Database.

Poiché l'URL del bundle di metadati della tablespace trasportabile deve essere scaricato dallo storage degli oggetti OCI, è necessario impostare gruppi dinamici e criteri che consentano l'accesso allo storage degli oggetti OCI utilizzando un principal risorsa. La configurazione di un principal risorsa è necessaria per scaricare in modo sicuro il bundle di metadati delle tablespace trasportabili nell'Autonomous AI Database di destinazione. Per ulteriori informazioni, vedere Prerequisiti.

Trasporto mediante un backup di tablespace non incrementale del database di origine

Con un backup della tablespace di origine non incrementale (completo), il bundle di metadati include l'esportazione Data Pump della tablespace e dei metadati dello schema. Durante il provisioning di Autonomous AI Database, è possibile fornire l'URL del bundle di metadati (nella casella di testo URI bucket di storage degli oggetti del file zip della tablespace della sezione Migrazione in Opzioni avanzate) per importare le tablespace dal backup della tablespace di origine. Il processo di provisioning ripristina il backup della tablespace e importa i metadati della tablespace e dello schema nel database.

Ad esempio:


Segue la descrizione di adbs_transportable_tablespace_provisioning.png
Descrizione dell'immagine adbs_transportable_tablespace_provisioning.png

Per i passi dettagliati per eseguire il provisioning di un Autonomous AI Database, vedere Provisioning di un'istanza di Autonomous AI Database.

Trasporto mediante un backup incrementale della tablespace del database di origine

Prima di trasportare il ripristino di un Autonomous AI Database, tenere presente quanto riportato di seguito.
  • Un backup incrementale della tablespace di livello 0 del database di origine può essere applicato solo quando si esegue il provisioning di un Autonomous AI Database; non può essere applicato a un Autonomous AI Database esistente.

  • L'applicazione del backup di livello 0 durante il provisioning ripristina solo i dati di backup RMAN dal database di origine al database di destinazione; in questa fase non vengono create tablespace, schemi o oggetti di database.

  • Dopo il provisioning, è possibile applicare i backup delle tablespace incrementali di livello 1 successivi del database di origine. I backup incrementali di livello 1 e successivi possono essere applicati solo se il backup della tablespace di backup di livello 0 dal database di origine è stato applicato durante il provisioning. È necessario applicare questi backup incrementali nello stesso ordine in cui sono stati creati. Ogni backup incrementale aggiorna il backup RMAN nel database di destinazione; tuttavia, le tablespace e gli oggetti dello schema non sono ancora stati creati.

  • Completare l'operazione di tablespace trasportabile applicando il backup incrementale finale. Questo passo finale ripristina tutte le tablespace e gli oggetti di database associati nel database di destinazione.

  • Convertire le tablespace in modalità READ WRITE in base alle esigenze.

Eseguire il provisioning di Autonomous AI Database utilizzando il backup di livello 0:

Iniziare eseguendo il provisioning di Autonomous AI Database con la tablespace di livello 0 che esegue il backup del database di origine. Questa operazione esegue il provisioning del database e ripristina il backup iniziale di livello 0 nel database. Per ulteriori informazioni, vedere Provisioning di un'istanza di Autonomous AI Database.

Applica successivi backup incrementali (livello 1):

Una volta eseguito il provisioning del database e ripristinato il backup di livello 0 delle tablespace di origine, applicare i backup incrementali (di livello 1) in sequenza.

Passi per aggiornare l'Autonomous AI Database di destinazione con backup incrementali:

  • Eseguire i passi dei prerequisiti riportati di seguito, se necessario.

    • Apri la console di Oracle Cloud Infrastructure facendo clic su icona di navigazione accanto a Cloud.

    • Nel menu di navigazione a sinistra di Oracle Cloud Infrastructure fai clic su Oracle Database, quindi fai clic su Autonomous AI Database.

    • Nella pagina Autonomous AI Database, selezionare Autonomous AI Database dai collegamenti nella colonna Nome visualizzato.

      Per applicare il backup della tablespace incrementale successivo dal database di origine nell'Autonomous AI Database di destinazione, effettuare le operazioni riportate di seguito.

      • Nell'elenco a discesa Altre azioni, selezionare Esegui migrazione dati.

        Mostra la pagina Esegui migrazione dati.

        Nota

        L'opzione Esegui migrazione dati è disponibile solo per i database che hanno completato un'importazione di livello 0 durante il provisioning e richiedono ulteriori importazioni incrementali di backup delle tablespace per completare l'operazione di tablespace trasportabile dopo il provisioning.
      • Nella pagina Esegui migrazione dati abilitare l'opzione di attivazione/disattivazione Importa tablespace trasportabile. Quando si abilita l'attivazione/disattivazione, viene visualizzato un campo file URI bucket di storage degli oggetti del file zip della tablespace. Immettere l'URL del bundle di metdata della tablespace trasportabile in questo campo.

        Ad esempio, per applicare il backup della tablespace di livello 1 dal database di origine, specificare l'URL appropriato per il backup della tablespace di livello 1 dal database di origine:


        Segue la descrizione di adbs_transportable_tablespace_incremental.png
        Descrizione dell'immagine adbs_transportable_tablespace_incremental.png

        ...

        Analogamente, quando si applica il backup finale della tablespace dal database di origine, fornire l'URL appropriato. Ad esempio:


        Segue la descrizione di adbs_transportable_tablespace_incremental_final.png
        Descrizione dell'immagine adbs_transportable_tablespace_incremental_final.png

      • Fare clic su Migra.

        Lo stato del ciclo di vita del database viene modificato in Aggiornamento. Una volta completato il ripristino, lo stato del ciclo di vita diventa Disponibile.

Limitazioni sulle tablespace trasportabili

Elenca le limitazioni per la tablespace trasportabile.

Tenere presenti le note e le limitazioni riportate di seguito per le tablespace trasportabili.

  • La tablespace trasportabile è supportata solo quando il database di origine è Oracle Database 11g o versione successiva e utilizza il modello di computazione ECPU.

  • Il trasporto delle tablespace in Autonomous AI Database è supportato solo quando si esegue il provisioning di una nuova istanza di Autonomous AI Database.

  • Quando si trasporta una tablespace contenente tabelle con dati TIMESTAMP WITH LOCAL TIME ZONE (TSLTZ) tra database con fusi orari diversi, le tabelle con dati TSLTZ non vengono trasportate. Tuttavia, vengono trasportate le tabelle nella tablespace che non contengono dati TSLTZ.

    È possibile determinare il fuso orario di un database con la seguente query:
    SELECT DBTIMEZONE FROM DUAL;

    È possibile modificare il fuso orario di un database con un'istruzione SQL ALTER DATABASE.

  • La versione dell'ora legale (DST) del database di origine deve essere uguale o precedente alla versione dell'ora legale di Autonomous AI Database.

  • Gli oggetti con oggetti sottostanti (ad esempio le viste materializzate) o gli oggetti contenuti (ad esempio le tabelle partizionate) non sono trasportabili a meno che tutti gli oggetti sottostanti o contenuti non siano presenti nel set di tablespace.

  • Non è possibile trasportare tablespace contenenti XMLType perché Oracle XML DB non è supportato in Autonomous AI Database.

    La query seguente restituisce una lista di tablespace contenenti XMLTypes:
    SELECT distinct p.tablespace_name 
        FROM dba_tablespaces p, dba_xml_tables x, dba_users u, all_all_tables t 
        WHERE t.table_name=x.table_name AND t.tablespace_name=p.tablespace_name 
              AND x.owner=u.username;
  • Non è possibile trasportare la tablespace SYSTEM o SYSAUX o gli oggetti di proprietà dell'utente SYS.

  • I database di origine e di destinazione devono utilizzare set di caratteri del database compatibili. Cioè, una delle seguenti deve essere vera:
    • I set di caratteri del database dei database di origine, di destinazione e di destinazione sono uguali.

    • Il set di caratteri del database di origine è un sottoinsieme rigoroso (binario) del set di caratteri del database di destinazione.

    • I database di origine e di destinazione devono utilizzare set di caratteri nazionali compatibili.

  • I tipi la cui interpretazione è specifica dell'applicazione e opaca per il database (ad esempio RAW, BFILE e AnyTypes) possono essere trasportati, ma non vengono convertiti nell'ambito dell'operazione di trasporto multipiattaforma. La loro struttura effettiva è nota solo all'applicazione, quindi l'applicazione deve affrontare eventuali problemi di indipendenza dopo che questi tipi sono stati spostati nella nuova piattaforma. Anche i tipi e gli oggetti che utilizzano questi tipi opachi, direttamente o indirettamente, sono soggetti a questa limitazione.

  • L'SCN del database di origine deve essere minore o uguale all'SCN dell'Autonomous AI Database di destinazione in cui viene trasportata la tablespace.

  • Un'istanza di Autonomous AI Database supporta al massimo ventiquattro (24) tablespace, incluse sia le tablespace utente che quelle di sistema. Dopo aver considerato le tablespace di sistema predefinite, ad esempio SYSTEM, SYSAUX, UNDO, TEMP e REDO, è possibile trasportare in un'istanza di Autonomous AI Database un massimo di diciannove (19) tablespace utente.

  • La dimensione cumulativa delle tablespace trasportate non deve superare la dimensione massima del database supportata per Autonomous AI Database.