Ir al contenido principal

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

Los Espacios de Tablas o Tablespaces permiten agrupar lógicamente los datafiles o archivos de datos donde se almacenan físicamente los datos de las tablas de usuarios y del sistema. Oracle en todas sus ediciones cuenta por defecto con 5 tablespaces: SYS SYSTEM UNDO TEMP USERS Cada espacio de tabla tiene una función definida que se muestra en la tabla siguiente: TABLESPACE DESCRIPCIÓN SYSTEM Almacena información acerca de los datos de la base de datos. SYSAUX "Es un tablespace que nace en 9i para dar soporte a los diferentes features de Oracle que necesitan crear segmentos dentro de la base de datos, por ejemplo AWR en 10g."  http://www.forosdelweb.com/f100/tablespace-sysaux-606358/ UNDO Sirve para retener los cambios que se realizan sobre los datos en Oracle y así poder deshacerlos. TEMP Contiene datos temporales o no permanentes  que permanecen únicamente por la duración de la sesión, es decir, que una vez que la sesión termina, estos datos son bo

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

Oracle Database XE puede ser accedida desde la aplicación SQL*Plus, que es un programa de líneas de comandos SQL. Para acceder a SQL*PLus, existen dos métodos: Primero: Inicio>Todos los programas>Base de datos Oracle 10g/11g  Express Edition>Ejecutar Línea de comandos SQL.                     En el caso de Oracle Database 18c Express Edition para Windows:  Inicio>Oracle-OraDB18Home1>SQLPlus Se visualiza la ventan de SQLPlus y se activa un promptuario SQL> que antecede a cualquier comando SQL. Para establecer la conexión al servidor Oracle, ingrese el comando: SQL> conn system (presione ENTER) Introduzca la contraseña: La contraseña es la establecida por Usted al momento de instalar Oracle.(A no ser que la haya cambiado). Presione Enter. Se visualizará el mensaje: Conectado .   A continuación se activa el prompter SQL> Ahora podemos enviar mandatos SQL al servidor XE. Para empezar, crearemos un nuevo usuario llamado MUSICAL. La

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

Es habitual crear y administrar usuarios y roles por medio de líneas de comando usando SQL PLUS, sin embargo muchos de estos procesos pueden  realizarse por medio de Oracle SQL Developer que es la herramienta gráfica desarrollada en Java para cubrir de modo visual las tareas mencionadas. Crear un usuario con Oracle SQL Developer 1.   Iniciar  Oracle SQL Developer 2. Abrir la conexión de usuario SYSTEM configurada para XEPDB1 o cualquier otra PDB disponible. Si no cuenta con una conexión basada en el usuario SYSTEM, ver el siguiente post . 3.   En el panel Conexión se desplegarán los nodos de la conexión abierta y seleccionar la carpeta Usuarios.   4.   Click con botón secundario y seleccionar Crear Usuario . 5.   Llenar los datos en el formulario Crear Usuario. 6.   Click en Roles Otorgados. Seleccionar CONNECT y RESOURCE .   7.   Seleccionar Cuotas. Seleccionar USERS y establecer 300 en la columna Cuota y M en Unidades. Opcional.- Click en S