logo
Entre em contato e saiba mais sobre como a DataUnique pode transformar seu negócio.

Fale Conosco

contato@dataunique.com.br
(62) 3932-2500
banner-winthor-sidebar
 

Clonar PDB no Mesmo CDB – Banco de Dados 12c

Clonar PDB no Mesmo CDB – Banco de Dados 12c

banner-winthor-header

Introdução

Esse tutorial tem objetivo de mostrar como se realiza um clone de um pluggable database (PDB) em um mesmo container (CDB). Tendo como benefício o provisionamento de um ambiente paralelo, de modo versátil, para testes de aplicação, simulações de funcionalidades, etc.
No Oracle 11g isso seria feito via RMAN DUPLICATE ou datapump, consegue ver o benefício para nós DBAS?

Pré-requisitos

  • Recursos de hardware disponíveis.
  • Banco de dados 12c instalado.
  • Container.
  • Um PDB para ser fonte do clone.

Comandos Extras:

Meu banco de dados é CDB ou non-CDB?
select name,cdb,con_dbid from v$database;
Qual nome do meu CDB?
SQL> show com_name
Quais PDB existem no meu CDB e qual open_mode?
SELECT name, open_mode FROM v$pdbs;
Como mudar minha sessão para PDB/CDB?
ALTER SESSION SET container = pdb1;
ALTER SESSION SET container = cdb$root;

Procedimentos

Variáveis:

  • ORACLE_HOME: /u01/app/oracle/12.2.0.1/db1
  • Porta listener: 1539
  • Container: CDB$ROOT
  • PDB: ORCLPDB

Preparando o PDB fonte para o clone

Setar variáveis de ambiente (Oracle HOME,BASE,SID)
. oraenv

Baixar pluggable database
sqlplus / as sysdba
SQL> alter pluggable database ORCLPDB close immediate;

Abrir em modo read only
SQL> alter pluggable database ORCLPDB open read only;

Criar diretório para clone
SQL> host
cd /u02
mkdir nome_pasta_pdb
exit

Configurando diretório para ser alvo na criação do Clone
sqlplus / as sysdba
SQL> alter system set db_create_file_dest='/u02/ nome_pasta_pdb';

Clonado PDB
sqlplus / as sysdba
SQL> create pluggable database CLONE_NAME from ORCLPDB;

Abrindo pluggable database
sqlplus / as sysdba
SQL> alter pluggable database ORCLPDB open;
SQL> alter pluggable database ORCLPDB save state;
— Torna permanente o estágio do PDB.

Conectando no PDB clone
system/oracle@localhost:1539/CLONE_NAME;

Observe como fica o status do LISTENER
lsnrctl status

Como ficaria meu TNSnames para entrado do PDB?
CLONE_NAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db1-fs.localdomain)(PORT = 1539))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = CLONE_NAME)
)
)

Referências

http://www.oracle.com/technetwork/pt/articles/database-performance/database-multitenant-oracle12cr1-2555858-ptb.html

https://oracle-base.com/articles/12c/multitenant-connecting-to-cdb-and-pdb-12cr1

https://oracle-base.com/articles/12c/multitenant-clone-remote-pdb-or-non-cdb-12cr1

Rogê Gonçalves

roge@dataunique.com.br

Nenhum Comentário

Escreva um Comentário

Comentário
Nome
Email
Website