Nota:
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriversi a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Duplicare un pluggable database in linea in remoto tra i sistemi DB in Oracle Base Database Service utilizzando il database link
Introduzione
Puoi creare copie dei pluggable database (PDB) nello stesso database (Container Database) in un sistema DB. Questa operazione è nota come clonazione locale. Ciò può essere ottenuto facilmente utilizzando la console. Puoi anche duplicare un PDB in un database diverso (database di tipo container) di un sistema DB diverso. Questa operazione è nota come clonazione remota.
La duplicazione remota richiede due sistemi DB, in quanto ogni sistema DB supporta un solo database (database di tipo container). La duplicazione remota del PDB non è ancora disponibile nella console. Puoi creare una copia remota utilizzando l'API RemoteclonePluggabledatabase, utilizzando un database link e con strumenti basati sull'API che includono l'interfaccia CLI OCI, gli SDK e Terraform.
Questa esercitazione guida l'utente nella procedura per duplicare in remoto un PDB utilizzando un database link in un Oracle Base Database Service.
Obiettivi
Duplicazione online remota di un PDB in un sistema DB diverso in Oracle Base Database Service mediante un database link.
Prerequisiti
- Comprensione di Oracle Base Database Service.
- Due servizi di database Oracle Base all'interno della stessa rete VCN o di VCN diversi.
- Peering VCN se questi sistemi DB si trovano su un peering VCN diverso.
- Di seguito sono riportati i nomi degli ambienti utilizzati in questa esercitazione per una facile comprensione.
- Nome sistema DB di origine: SOURCE
- Nome sistema DB di destinazione: TARGET
- Nome PDB di origine: SOURCE_PDB1
- Duplica nome PDB: CLONE_PDB1
Task 1: Preparare l'ambiente di origine
-
Creare un utente a scopo di copia sul CDB di origine utilizzando il comando seguente.
CREATE USER c##clone IDENTIFIED BY <PASSWORD> CONTAINER=ALL; GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE TO c##clone CONTAINER=ALL;
-
Controllare il contenuto dell'oggetto nel PDB di origine: in questo esempio si sta considerando la tabella
TEST.PERSONS
come riferimento.-
Nome schema: TEST
-
Nome della tabella : PERSONA
-
Task 2: Preparare l'ambiente di destinazione
-
Assicurarsi che
local_undo_enabled
sia impostato su true nel CDB di destinazione. -
Assicurarsi che il CDB di destinazione sia in modalità
archivelog
.Nota: quando il CDB di destinazione si trova in modalità ARCHIVELOG e LOCAL UNDO MODE, il PDB di origine può essere aperto in modalità di lettura/scrittura e operativo durante il processo di duplicazione. Questa tecnica è nota come clonazione a caldo.
-
Aggiornare l'indirizzo del nome del servizio CDB di origine nel file
tnsnames.ora
situato nella directory$ORACLE_HOME/network/admin/
del nodo del sistema DB di destinazione.<addressname> = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = <hostname>)(Port = <port>)) ) (CONNECT_DATA = (SERVICE_NAME = <service_name>) ) )
Ecco un esempio completato:
SOURCE_CDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = source.**************.*****.oraclevcn.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = SOURCE_iad1zr.**************.*****.oraclevcn.com) ) )
-
Creare un database link nel CDB di destinazione che punta al CDB di origine.
CREATE PUBLIC DATABASE LINK clone_pdb_dblink CONNECT TO c##clone identified by <PASSWORD> using '<ADDRESSNAME>'; CREATE PUBLIC DATABASE LINK clone_pdb_dblink CONNECT TO c##clone identified by ************** using 'SOURCE_CDB';
-
Controllare che la connettività tramite il database link funzioni correttamente nel CDB di destinazione. Poiché non si utilizza il database link con lo stesso nome del database a cui si connette, è necessario impostare anche
global_names parameter
su false. In caso contrario, si verificherà l'errore ORA-02085.alter session set global_names=false; select * from dual@clone_pdb_dblink;
Task 3: Duplica PDB remoto
-
È ora di duplicare il PDB di origine nel CDB di destinazione eseguendo il login al CDB di destinazione. Fornire il valore
TDE_WALLET_PASSWORD
dell'ambiente di destinazione.alter session set global_names=false; create pluggable database <CLONE_PDB_NAME> from <SOURCE_PDB_NAME>@<DB_LINK_NAME> keystore identified by <TDE_WALLET_PASSWORD>; create pluggable database CLONE_PDB1 from SOURCE_PDB1@clone_pdb_dblink keystore identified by <TDE_WALLET_PASSWORD>;
-
Aprire il PDB duplicato in modalità di lettura/scrittura. Una volta creato, il PDB è in modalità MOUNT. È necessario aprire il nuovo PDB duplicato in modalità di lettura/scrittura per consentire a Oracle Database di completare l'integrazione del nuovo PDB nel CDB di destinazione.
alter pluggable database CLONE_PDB1 open read write;
-
Verificare se tutti i dati oggetto vengono duplicati nel PDB di copia:
La copia dei dati dal PDB di origine al PDB di copia nel sistema DB di destinazione è riuscita.
Collegamenti correlati
Approvazioni
- Autore - Leona Dsouza, Senior Cloud Engineer
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Explorer di Oracle Learning.
Per la documentazione sul prodotto, visitare il sito Oracle Help Center.
Clone a Pluggable Database online remotely between DB Systems in Oracle Base Database Service using database link
F87175-01
September 2023
Copyright © 2023, Oracle and/or its affiliates.