Crear y administrar PDB's con Oracle SQL Developer

En el presente post nos dedicaremos a estudiar como crear y administrar PDB's en Oracle 18c XE empleando Oracle SQL Developer.

Crear una PDB


1. Ejecutar Oracle SQL Developer.

2. Crear una conexión como usuario SYS AS SYSDBA para conectarse con el CDB(Base de Datos Contendora).


3. Click en Menú Ver.

4. Click en DBA.

5. Click en el botón  Agregar Conexión.


6. Seleccionar la conexión SYSADMINISTRADOR.
 

6. Click en Bases de datos del Contenedor.



7. Seleccionar Crear PDB... para crear una base de datos de conexión en base a la plantilla PDB$SEED.



8. Llenar los datos solicitados en el cuadro de diálogo como lo muestra la imagen siguiente: (Nombre de la Base de Datos: XEPDB2)


Al crear la nueva PDB XEPDB2, se omite el espacio de tabla USERS, siendo necesario que usted cree ese tablespace por su cuenta.

La vista del script de creación de XEPDB2 es la siguiente:


10. Click en Aplicar.

11. Al desplegar el nodo de Bases de Datos del Contenedor, se visualizarán XEPDB1 y XEPDB2 que acaba de ser creada.


Clonar una PDB

Clonar una PDB implica crearla a partir de otra PDB, es decir, tomar una PDB existente como modelo o plantilla, en nuestro caso, clonaremos XEPDB1 que fue creada en el momento de la instalación de Oracle 18c XE.

1. Click en Bases de datos del Contenedor.

2. Seleccionar Clonar PDB...




3. Llenar el cuadro de clonar PDB con los datos de la imagen siguiente: 
(Nombre de la Base de Datos: XEPDB3)
(PDB de origen: XEPDB1) 



La vista del script de creación de XEPDB3 es la siguiente:





4. Click en Aplicar.

5. Al desplegar el nodo de Bases de Datos del Contenedor, se visualizarán XEPDB1, XEPDB2  y  XEPDB3 que acaba de ser creada.


Administración de Bases de datos del Contenedor(Pluggable Databases)

1. Seleccionar la base de datos XEPDB1 de la carpeta Bases de Datos del Contenedor y hacer click con el botón secundario y hacer click en Abrir...

2. En el área de trabajo se presenta un separador con dos separadores anidados: General y Archivos de Datos.


3. Click sobre Acciones...




4. Click en Refrescar PDB... (Realiza una actualización de la PDB dejándola abierta en modo de Sólo Lectura)



5. Click en Aplicar, obteniéndose el mensaje de error:



Nota.- XE 18c no soporta la propiedad de Refrescamiento como EE.

6. Click en Modificar Estado...(Cambia el estado de la PDB, es decir, Abierta en modo lectura escritura o Open Read Write, Abierta en modo de sólo lectura o Open Read Only, Cerrada o Closed.)




7. Click en Crear Disparador de Inicio. (Crea un disparador a nivel de Base de Datos o Instancia para iniciar la PDB en el arranque)


Salvar el estado de una PDB
Si se requiere preservar  el estado abierto en modo lectura y escritura de una PDB, ejecute la sentencia(debe verificar que su PDB está abierta en modo OPEN READ WRITE antes de submitir la instrucción):

ALTER pluggable DATABASE nombrepdb save state;

Un saludo, espero que este tutorial sea de ayuda.



Comentarios

Anónimo dijo…
Hola buenas,

Tengo una duda y quería saber si podrías ayudarme, tengo dos PDB con el mismo nombre en distintos CDB; cdb1(pdb1,pdb2), cdb2(pdb1,pdb2), la pregunta es la siguiente:
¿Como puedo conectarme por Oracle SQL Developer a los distintos PDB?
¿Cómo se le especifica en el nombre del servicio en los parámetros de conexión el CDB?
Si pongo el nombre del PDB; pdb1 en el nombre del servicio se conecta al primero que encuentra con ese nombre, pero y el resto ?

Saludos.
Gracias.
Roberto PZ dijo…
Hola amigo. te comparto el enlace que indica Cómo conectarse a una PDB desde Oracle SQL Developer: https://oraxedatabase.blogspot.com/2018/11/como-conectarse-una-pdb-desde-sql.html
Roberto PZ dijo…
Cómo tienes más de un CDB debo preguntarte si has creado un listener por cada PDB de cada CDB o en su defecto, cada CDB ha sido configurado con puerto de escucha diferente?

Anónimo dijo…
Hola Roberto, tengo dos listener, uno por cada CDB. Solo me puedo conectar a un PDB (pdb1) de un CDB. el otro PDB (pdb1) al llamarse igual no hay manera de que conecte en el otro CDB.
Roberto PZ dijo…
Anonymous, yo te suguiero que cambies el puerto de escucha de una de las CDB, por ejemplo. si en CBD1 el puerto por defecto es 1521, en CDB2 cambia a 1522.
Anónimo dijo…
Genial gracias, ya lo había pensado cuando me dijistes lo del listener y el puerto de escucha.
En cualquier caso, por defecto te permite varios listener en el mismo puerto para distintos CDB, entonces no entiendo como no hay una forma de conectar a varios PDB que se llaman igual en distinto CDB, bueno muchas gracias por tu ayuda.

Entradas más populares de este blog

Crear y Administrar Espacios de Tablas(Tablespaces) Parte 1

Como conectarse a Oracle Database XE desde la línea de comandos.

Crear usuarios, asignar y revocar roles en Oracle XE con SQL Developer