Observação:
- Este tutorial requer acesso ao Oracle Cloud. Para se inscrever e obter uma conta gratuita, consulte Conceitos Básicos do Oracle Cloud Infrastructure Free Tier.
- Ele usa valores de exemplo para credenciais, tenancy e compartimentos do Oracle Cloud Infrastructure. Ao concluir seu laboratório, substitua esses valores por valores específicos do seu ambiente de nuvem.
Clonar um Banco de Dados Plugável on-line remotamente entre Sistemas de BD no Oracle Base Database Service usando link de banco de dados
Introdução
Você pode criar clones de seus Bancos de Dados Plugáveis (PDB) dentro do mesmo banco de dados (Banco de Dados Contêiner) em um Sistema de BD. Esta operação é conhecida como clonagem local. Isso pode ser feito facilmente usando a Console. Você também pode clonar um PDB para outro banco de dados (Banco de Dados Contêiner) de outro sistema de BD. Esta operação é conhecida como clonagem remota.
A clonagem remota requer dois Sistemas de BD, pois cada Sistema de BD suporta apenas um banco de dados (Banco de Dados Contêiner). A clonação remota do PDB ainda não está disponível na Console. Você pode criar um clone remoto usando a API RemoteclonePluggabledatabase, usando um link de banco de dados e com ferramentas baseadas em API, incluindo a CLI do OCI, SDKs e o Terraform.
Este tutorial o orienta com as etapas para clonar remotamente um PDB usando um link de banco de dados em um Oracle Base Database Service.
Objetivos
Clonagem on-line remota de um PDB para outro sistema de BD no Oracle Base Database Service usando um link de banco de dados.
Pré-requisitos
- Noções básicas do Oracle Base Database Service.
- Dois Serviços de Banco de Dados do Oracle Base dentro da mesma VCN ou em diferentes VCNs.
- Pareamento da VCN se esses sistemas de BD estiverem em outro Pareamento da VCN.
- Veja a seguir os nomes de ambiente usados neste tutorial para facilitar a compreensão.
- Nome do sistema de banco de dados de origem: SOURCE
- Nome do sistema de BD de destino: TARGET
- Nome do PDB de Origem: SOURCE_PDB1
- Clonar nome do PDB: CLONE_PDB1
Tarefa 1: Preparar o Ambiente de Origem
-
Crie um usuário para fins de clonagem no CDB de Origem usando o comando a seguir.
CREATE USER c##clone IDENTIFIED BY <PASSWORD> CONTAINER=ALL; GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE TO c##clone CONTAINER=ALL; -
Verifique o conteúdo do objeto no PDB de origem: Neste exemplo, estamos considerando a tabela
TEST.PERSONSpara referência.-
Nome do esquema: TESTE
-
Nome da tabela: PESSOAS

-
Tarefa 2: Preparar o Ambiente de Destino
-
Certifique-se de que
local_undo_enabledesteja definido como verdadeiro no CDB de destino. -
Certifique-se de que o CDB de destino esteja no modo
archivelog.Observação: quando o CDB de destino está no modo ARCHIVELOG e no MODE LOCAL UNDO, o PDB de origem pode ser aberto no modo de leitura/gravação e operacional durante o processo de clonagem. Essa técnica é conhecida como clonagem a quente.

-
Atualize o endereço do nome do serviço CDB de origem no arquivo
tnsnames.oralocalizado no diretório$ORACLE_HOME/network/admin/no nó do sistema de BD de destino.<addressname> = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = <hostname>)(Port = <port>)) ) (CONNECT_DATA = (SERVICE_NAME = <service_name>) ) )Este é um exemplo concluído:
SOURCE_CDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = source.**************.*****.oraclevcn.com)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = SOURCE_iad1zr.**************.*****.oraclevcn.com) ) ) -
Crie um link de banco de dados no CDB de destino apontando para o CDB de origem.
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'; -
Verifique se a conectividade por meio do link de banco de dados funciona bem no CDB de destino. Como não estamos usando o link de banco de dados com o mesmo nome do banco de dados ao qual ele se conecta, precisamos definir adicionalmente
global_names parametercomo falso. Caso contrário, você encontrará erro do ORA-02085.alter session set global_names=false; select * from dual@clone_pdb_dblink;
Tarefa 3: Clonar um PDB Remoto
-
É hora de clonar o PDB de origem no CDB de destino fazendo log-in no CDB de destino. Forneça o
TDE_WALLET_PASSWORDdo ambiente de destino.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>;
-
Abra o PDB clonado no modo de leitura/gravação. Depois de criar o PDB, ele estará no modo montado. Abra o novo PDB clonado no modo de leitura/gravação do Oracle Database para concluir a integração do novo PDB no CDB de destino.
alter pluggable database CLONE_PDB1 open read write; -
Verifique se todos os dados do objeto estão clonados no PDB clone:

Podemos ver que os dados foram copiados com sucesso do PDB de origem para o PDB clone no sistema de BD de destino.
Links Relacionados
Confirmações
- Autor - Leona Dsouza, Engenheiro de Nuvem Sênior
Mais Recursos de Aprendizagem
Explore outros laboratórios no site docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o 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.