lunes, 29 de mayo de 2023

Export Data Pump en Windows

Para ejecutar un Export Data Pump en Windows podemos usar PowerShell (que es una herramienta mas moderna  y potente)  o simplemente CMD (la línea de comandos de Windows clasica)

En este ejemplo la base de datos se llama ORCL. Voy a hacer un export full. Tengo previamente creado un directorio c:\oracle\scripts y un directorio para los dumps d:\oracle\dumps

1 - Verifico en la Base de datos que el Directorio DATAPUMP_DIR apunta al directorio requerido

Desde PowerShell o CMD

set ORACLE_SID=ORCL

sqlplus / as sysdba

select * from dba_directories where directory_name=’DATA_PUMP_DIR’;

 

Se puede modificar ese directorio default o crear un directorio nuevo. En este ejemplo lo modifico

create or replace directory DATA_PUMP_DIR as “d:\oracle\dumps'';

 

2 -  Crear un par file  con wordpad

logfile=expdp_orcl.log

dumpfile=expdp_orcl.dmp

directory=DATAPUMP_DIR

full=Y

Para guardar : directorio seleccionado c:\oracle\scripts

nombre  orcl.par   formato :  Documento de Texto – Formato MS-DOS

 

3 - En  Windows PowerShell o CMD

        set ORACLE_SID=ORCL

        expdp system/password parfile=c:\oracle\scripts\ orcl.par

 

Finalmente cuando termine el dump va  a quedar en el directorio seleccionado en DATA_PUMP_DIR

sábado, 27 de mayo de 2023

Como Conectarse a una Base Autonoma con SQL Developer

 Una vez que tenemos creada una Base de Datos Autonoma podemos conectarnos de diversas formas entre ellas con SQL Developer.

1 - En nuestra Base Autonoma en mi ejemplo ATPTEST1, seleccionar Conexion de Base de Datos

2 - Ir a Descargar Cartera

3 - Agregarle contraseña y presionar Descargar

4 - Cuando lo descargamos nos va a quedar un archivo zip con el nombre Wallet_<BD>
5 - Abrimos el SQL Developer y agregamos la conexion con Usuario Admin (que es el 1ero que tenemos, luego podemos crear otros usuarios). Seleccionamos Tipo de Conexion : Cartera de Cloud
Agregamos el Wallet que recien bajamos. 


6 - Probamos y luego Guardar y ya nos conectamos a la base de datos

Ya estamos conectados!




Error Oracle Cloud 403 IP Address Rejected

 Si obtenemos el siguiente error Oracle Cloud 403  IP Address Rejected es porque estamos tratando de acceder al recurso desde una IP no autorizada, para solucionarlo tenemos que agregar en la Lista del Control de Acceso del Recurso que queríamos acceder. En mi ejemplo una Base de Datos Autónoma desde otra Notebook que no era desde la cual la cree.


1 - Ir a Red / Lista de Control de Acceso / Editar 





2 - Van a aparecer las IPs que ya estan habilitadas. Allí presionar Agregar mi dirección IP. En mi caso habia una sola habilitada




3 - Automáticamente detecta nuestra dirección IP y la agrega separada por coma. Allí presionar Guardar




Mi base autónoma quedo unos segundos actualizando su estado y enseguida quedo lista para acceder!

















Como Crear una Base de Datos Autónoma Para Procesamiento Transaccional

 En este ejemplo vamos a crear una Base de Datos transaccional autónoma OLTP Always Free, o sea Gratuita para Siempre.  Debemos contar primero con una cuenta en la Nube de Oracle. La cuenta puede ser del tipo gratuita creada en cloud.oracle.com/free o puede ser una cuenta con créditos ya que igualmente podemos crear esta base gratuita sin consumir créditos. Podemos tener un máximo de 2 bases de datos autónomas por cuenta.

Las bases de datos autónomas tienen asignado 1 OCPU, 20G de Almacenamiento y la Licencia esta incluida.

1 - Seleccionar Oracle Database - Procesamiento de transacciones autónomo 




2 -  Seleccionar el Compartimento, en mi ejemplo elijo TEST, para saber mas sobre Compartimentos AQUI 


3 - Presionar Crear Base de Datos Autónoma. Se pueden crear máximo 2 bases de datos autónomas Always Free por cuenta. 



4 - Aparece con un nombre de Base de Datos a mostrar y el nombre de base de datos, ambos se pueden cambiar. En mi ejemplo los cambio por ATPTEST1


5 - Dejar seleccionado Procesamiento de Transacciones e Infraestructura Compartida 
6 - Seleccionar SIEMPRE GRATIS. Queda asignada con 1 OCPU (Oracle CPU) y 20G de espacio de Almacenamiento.
7- Crear las credenciales del usuario Admin que es el administrador de esta base de datos y luego Presionar Crear Base de Datos Autónoma. 


8 - En unos pocos minutos queda en verde en estado DISPONIBLE. ATP es por el tipo de Base de Datos, que en ingles es la sigla de Autonomous Transaction Processing


Conclusión : En pocos pasos podemos tener creada una base de datos autónoma gratuita para siempre con 1 OCPU y 20G de Almacenamiento y con Licenciamiento incluido.


















viernes, 26 de mayo de 2023

OCI - Crear Compartimentos

Los Compartimentos sirven para organizar y aislar los recursos en la nube (como si fueran carpetas de windows). La idea es asignar a un Compartimento todos los recursos de un mismo tipo. 

Cuando creamos una cuenta en la Nube de Oracle existe solo el Compartimento raíz que es con el mismo nombre que la cuenta. 

Lo recomendado es que antes de comenzar a crear los recursos pensemos en como los agruparemos, por ejemplo DESARROLLO y PRODUCCION y creemos primeros los Compartimentos y luego a los recursos ya los creamos en su Compartimento correspondiente.

En el caso de que los hayamos creado los recursos en el Compartimento raíz, y luego creamos los Compartimentos, no hay tanto problema, la mayoría de los recursos se pueden mover a su Compartimento correspondiente. 

Los Compartimentos atraviesan las regiones, por lo tanto van a existir en todas las regiones que tenga acceso esa cuenta.

Crear un Compartimento

1  - Seleccionamos Identidad y Seguridad -> Compartimentos


2 - Seleccionamos Crear Compartimento




3 - Completamos Nombre, Descripción y de que Compartimento depende



4 - Vamos a presionar Crear Compartimento



5 - Esperamos unos segundos y ya aparece creado



Conclusión : Los Compartimentos son necesarios y recomendados pero no obligatorios. Crearlos lleva pocos pasos y quedan disponibles inmediatamente. Cuando estan disponibles aparece el circulo VERDE y estado ACTIVO como en la figura anterior.














jueves, 18 de mayo de 2023

ASM : Como Consultar Compatibilidad Diskgroups

A partir de Oracle 11g tenemos que los diskgroups tienen 3 atributos de compatibilidad
COMPATIBILITY.RDBMS
COMPATIBILITY.ASM
COMPATIBILITY.ADVM
 la vista v$asm_attribute donde detalla los attributos de un diskgroup

SQL> col name format a20
SQL> col value format a10
SQL> select group_number, name, value from v$asm_attribute where name like 'comp%' order by 1;


GROUP_NUMBER NAME  VALUE
------------ -------------------- ----------
  1 compatible.asm  12.1.0.2.0
  1 compatible.rdbms  12.1.0.2.0
  2 compatible.asm  12.1.0.2.0
  2 compatible.rdbms  12.1.0.2.0
  3 compatible.asm  12.1.0.2.0
  3 compatible.rdbms  12.1.0.2.0


El COMPATIBLE.ASM y COMPATIBLE.RDBMS determinan la version minima de ASM y Base de datos que se pueden usar en ese Diskgroup. El parametro COMPATIBLE.ADVM debe ser mayor a 11.2 para que se pueda utilizar esta funcionalidad.
Se puede subir el valor de la compatibilidad con ALTER DISKGOUP teniendo en cuenta que subir el valor de la compatibilidad es una tarea irreversible.


Tuning Redo Logs

Para mejorar la performance en las escrituras a disco, es necesario que el tamaño de los redologs sea suficiente como para que se hagan como máximo 3 switch de redologs por hora.
Esto es independiente de la version de base de datos que estemos usando, el uso de los redologs en Oracle es igual en todas las versiones inclusive si es una CDB o no.
En este ejemplo detectamos en el alert.log que se estan ejecutando switch de redolog cada 2 minutos. Esto genera mucho overhead.

Mon Feb 06 16:21:23 2017
Thread 1 cannot allocate new log, sequence 104612
Checkpoint not complete
  Current log# 1 seq# 104611 mem# 0:/u01/oradata/TEST/redo01.log
Thread 1 advanced to log sequence 104612 (LGWR switch)
  Current log# 2 seq# 104612 mem# 0: /u01/oradata/TEST/redo02.log
Mon Feb 06 16:21:23 2017
Archived Log entry 69088 added for thread 1 sequence 104611 ID 0x72f28ed0 dest 1:
Mon Feb 06 16:23:21 2017
Thread 1 advanced to log sequence 104613 (LGWR switch)
  Current log# 3 seq# 104613 mem# 0: /u01/oradata/TEST/redo03.log
Mon Feb 06 16:23:21 2017
Archived Log entry 69089 added for thread 1 sequence 104612 ID 0x72f28ed0 dest 1:
Mon Feb 06 16:23:32 2017
Thread 1 cannot allocate new log, sequence 104614
Checkpoint not complete
  Current log# 3 seq# 104613 mem# 0: /u01/oradata/TEST/redo03.log
Thread 1 advanced to log sequence 104614 (LGWR switch)
  Current log# 1 seq# 104614 mem# 0: /u01/oradata/TEST/redo01.log
Mon Feb 06 16:23:33 2017
Archived Log entry 69090 added for thread 1 sequence 104613 ID 0x72f28ed0 dest 1:
Mon Feb 06 16:25:22 2017
Thread 1 cannot allocate new log, sequence 104615
Checkpoint not complete
  Current log# 1 seq# 104614 mem# 0: /u01/oradata/TEST/redo01.log
Thread 1 advanced to log sequence 104615 (LGWR switch)
  Current log# 2 seq# 104615 mem# 0: /u01/oradata/TEST/redo02.log
Mon Feb 06 16:25:24 2017
Archived Log entry 69091 added for thread 1 sequence 104614 ID 0x72f28ed0 dest 1:
Mon Feb 06 16:27:22 2017
Thread 1 cannot allocate new log, sequence 104616
Checkpoint not complete
  Current log# 2 seq# 104615 mem# 0: /u01/oradata/TEST/redo02.log
Thread 1 advanced to log sequence 104616 (LGWR switch)
  Current log# 3 seq# 104616 mem# 0: /u01/oradata/TEST/redo03.log

Recomiendo revisar el log en varios horarios para ver si es algo que se mantiene o si es muy eventual, para poder calcular el tamaño de acuerdo a un promedio de actividad.

Revisamos el tamaño de los RedoLogs
$ ls -lh re*
-rw-r-----. 1 oracle oinstall 51M Feb  6 16:29 redo01.log
-rw-r-----. 1 oracle oinstall 51M Feb  6 16:31 redo02.log
-rw-r-----. 1 oracle oinstall 51M Feb  6 16:31 redo03.log

En este caso tienen 51M y no alcanzan a almacenar ni un minuto, en forma teorica tendrian que poder almacenar 20 minutos, o sea 3 switch de redolog por hora. Sin embargo el comportamiento no es igual en todas las horas, y decido realizar el incremento en forma gradual, por lo tanto voy a subir el tamaño a 300M para luego seguir monitoreando y ajustando según se necesite.

SQL> select group#, bytes/1024/1024 "size Mb" from v$log;

    GROUP#    size Mb
---------- ----------
         1         50
         2         50
         3         50

SQL> select group#,member from v$logfile;

    GROUP#
----------
MEMBER
--------------------------------------------------------------------------------
         1
/u01/oradata/TEST/redo01.log

         2
/u01/oradata/TEST/redo02.log

         3
/u01/oradata/TEST/redo03.log

El procedimiento para agrandarlos, es agregar otros 3 grupos con el tamaño deseado y eliminar estos 3 grupos actuales. En este caso aprovecho a realizarlo en otro file system que hay mas espacio.

 SQL> alter database add logfile group 4 '/u01/redologs/TEST/redo04.log' size 300M;

Database altered.

SQL> alter database add logfile group 5 '/u01/redologs/TEST/redo05.log' size 300M;

Database altered.

SQL>  alter database add logfile group 6 '/u01/redologs/TEST/redo06.log' size 300M;
SQL> select group#,status from v$log;

    GROUP# STATUS
---------- ----------------
         1 INACTIVE
         2 INACTIVE
         3 ACTIVE
         4 ACTIVE
         5 CURRENT
         6 UNUSED

SQL> alter database drop logfile group 1;

Database altered.

SQL> alter database drop logfile group 3;
alter database drop logfile group 3
*
ERROR at line 1:
ORA-01624: log 3 needed for crash recovery of instance TEST (thread 1)
ORA-00312: online log 3 thread 1: '/u01/oradata/TEST/redo03.log'
Este error es porque todavia esta ACTIVE

SQL> alter database add logfile group 7 '/u01/redologs/TEST/redo07.log' size 300M;

Database altered.

SQL> alter database add logfile group 8 '/u01/redologs/TEST/redo08.log' size 300M;

Database altered.

SQL> alter database add logfile group 9 '/u01/redologs/TEST/redo09.log' size 300M;

Database altered.

SQL> select status, group# from v$log;

STATUS               GROUP#
---------------- ----------
INACTIVE                  3
CURRENT                   4
ACTIVE                    5
ACTIVE                    6
UNUSED                    7
UNUSED                    8
UNUSED                    9

SQL> alter database drop logfile group 3;

Database altered.


Conclusion :  Cuando el tamaño de los Redo Logs no sea suficiente para almacenar 20 minutos hay que agrandarlos y la forma es agregando mas grupos de RedoLogs del tamaño requerido. Luego se deben borrar los anteriores aunque posiblemente no puedan borrarse en el instante pero si unos minutos más tarde.

Como Crear Base de Datos 19c desde SQL

 En este ejemplo ya tenemos en un servidor Linux instalado el Software Oracle Database 19c y vamos a crear una Base de Datos de tipo Container Database CDBDEV logueados con el usuario oracle (el mismo con el cual instalamos el Software). Tanto el nombre de la base de datos como los directorios usados en este ejemplo se pueden personalizar.

1 - Configurar las variables de ambiente, reemplazando en mi ejemplo con los Directorios correspondientes a la instalacion

$ export ORACLE_BASE=/u01/app/oracle

$ export ORACLE_HOME=/u01/app/oracle/product/19.3.0/db_home1

$ export ORACLE_SID=CDBDEV


2  - Levantar el listener 

$  lsnrctl start

(Para levantar el listener default con nombre LISTENER en el Port default 1521 no hace falta configurar nada)


3 - Copiar init.ora en initCDBDEV.ora 

 $ cp init.ora initCDBDEV.ora


4 -  Editar el initCDBDEV.ora 

 agregar

db_create_file_dest='/u01/app/oracle/oradata'

enable_pluggable_database=true


cambiar

db_name='CDBDEV'

db_recovery_file_dest='/app/oracle/fast_recovery_area'


verificar que el parametro compatible sea mayor a 12.0.0, idealmente

compatible='19.0.0.0'


4 - Crear los directorios

correspondientes a la auditoria que coincida con el parametro audit_file_dest del initCDBDEV.ora  

$ mkdir -p /u01/app/oracle/admin/CDBDEV/adump

$ mkdir -p /u01/app/oracle/oradata

$ mkdir -p /app/oracle/fast_recovery_area

 

5 - Levantar la instancia en estado NOMOUNT

$> sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Mon Apr 3 06:31:08 2023

Version 19.16.0.0.0

 Copyright (c) 1982, 2022, Oracle.  All rights reserved.

 Connected to an idle instance.

 

SQL> startup nomount

ORACLE instance started.

Total System Global Area 1073738192 bytes

Fixed Size                  9142736 bytes

Variable Size             633339904 bytes

Database Buffers          423624704 bytes

Redo Buffers                7630848 bytes


6 - Crear la Base de Datos

SQL> CREATE DATABASE CDBDEV 

USER SYS IDENTIFIED BY oracle

USER SYSTEM IDENTIFIED BY oracle

EXTENT MANAGEMENT LOCAL

DEFAULT TEMPORARY TABLESPACE temp

DEFAULT TABLESPACE users

UNDO TABLESPACE undotbs1

ENABLE PLUGGABLE DATABASE;


 Database created.


7 - Ejecutar el script catalog, demora como media hora 

SQL> @?/rdbms/admin/catalog.sql

…………………………

PL/SQL procedure successfully completed.

 

 

TIMESTAMP

--------------------------------------------------------------------------------

COMP_TIMESTAMP CATALOG    2023-04-03 06:42:22


Session altered.

Session altered.

SQL>

SQL> Rem *********************************************************************

SQL> Rem END catproc.sql

SQL> Rem *********************************************************************

SQL>



8 - Ejecutar el script catproc

SQL> @?/rdbms/admin/catproc.sql

 

9 - Agregar la Base en el oratab 

Editar  /etc/oratab

CDBDEV:/u01/app/oracle/product/19.3.0/dbhome_1:Y



Conclusión : Si no contamos con ambiente gráfico como para usar el DBCA pordemos crear la base de datos con estos simples pasos por linea de comandos.

viernes, 12 de mayo de 2023

Exadata : Como cambiar el Modo del Flash Cache

Elemplo con una configuracion de 3 Storage Servers.

1 - Verificamos el modo actual

[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e list cell attributes flashCacheMode

qr01celadm01: WriteBack

qr01celadm02: WriteBack

qr01celadm03: WriteBack


2 - Bajamos los servicios

[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e alter cell shutdown services cellsrv

qr01celadm01: 

qr01celadm01: Stopping CELLSRV services...

qr01celadm01: The SHUTDOWN of CELLSRV services was successful.

qr01celadm02: 

qr01celadm02: Stopping CELLSRV services...

qr01celadm02: The SHUTDOWN of CELLSRV services was successful.

qr01celadm03: 

qr01celadm03: Stopping CELLSRV services...

qr01celadm03: The SHUTDOWN of CELLSRV services was successful.


3 - Vaciamos los datos del FlashCache
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e alter flashcache all flush
qr01celadm01: Flash cache qr01celadm01_FLASHCACHE altered successfully
qr01celadm02: Flash cache qr01celadm02_FLASHCACHE altered successfully
qr01celadm03: Flash cache qr01celadm03_FLASHCACHE altered successfully


4 - Eliminamos el FlashCache
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e drop flashcache
qr01celadm01: Flash cache qr01celadm01_FLASHCACHE successfully dropped
qr01celadm02: Flash cache qr01celadm02_FLASHCACHE successfully dropped
qr01celadm03: Flash cache qr01celadm03_FLASHCACHE successfully dropped


5 - Bajamos los servicios
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e alter cell shutdown services cellsrv
qr01celadm01: 
qr01celadm01: Stopping CELLSRV services...
qr01celadm01: The SHUTDOWN of CELLSRV services was successful.
qr01celadm02: 
qr01celadm02: Stopping CELLSRV services...
qr01celadm02: The SHUTDOWN of CELLSRV services was successful.
qr01celadm03: 
qr01celadm03: Stopping CELLSRV services...
qr01celadm03: The SHUTDOWN of CELLSRV services was successful.


6 - Cambiamos el Modo del FlashCache a Write Trough
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e alter cell flashCacheMode = WriteThrough
qr01celadm01: Cell qr01celadm01 successfully altered
qr01celadm02: Cell qr01celadm02 successfully altered
qr01celadm03: Cell qr01celadm03 successfully altered

7 - Levantamos los servicios
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e alter cell startup services cellsrv
qr01celadm01: 
qr01celadm01: Starting CELLSRV services...
qr01celadm01: The STARTUP of CELLSRV services was successful.
qr01celadm02: 
qr01celadm02: Starting CELLSRV services...
qr01celadm02: The STARTUP of CELLSRV services was successful.
qr01celadm03: 
qr01celadm03: Starting CELLSRV services...
qr01celadm03: The STARTUP of CELLSRV services was successful.

8 - Creamos el FlashCache 
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e create flashcache all
qr01celadm01: Flash cache qr01celadm01_FLASHCACHE successfully created
qr01celadm02: Flash cache qr01celadm02_FLASHCACHE successfully created
qr01celadm03: Flash cache qr01celadm03_FLASHCACHE successfully created
 
9 - Verificamos
[celladmin@qr01celadm01 ~]$ dcli -c qr01celadm01,qr01celadm02,qr01celadm03 cellcli -e list cell attributes flashCacheMode
qr01celadm01: WriteThrough
qr01celadm02: WriteThrough
qr01celadm03: WriteThrough

Como crear un Scheduler JOB

Para crear un Job se usa DBMS_SCHEDULER.CREATE_JOBSe debe tener el privilegio CREATE JOB 

En estos dos ejemplos los jobs ejecutan un bloque de PLSQL

En el usuario dueño del esquema, se crea el Job, los parametros minimos son : 

1- job_name : Nombre del JOB (no puede ser el mismo nombre de otro objeto, por ejemplo del procedure que va a ejecutar porque comparte el mismo NAMESPACE)

2 - job_type : Tipo de Job, en este ejemplo es un bloque de PLSQL, en job_action especificar el nombre del job

3 - start_date : La fecha de comienzo, en este ejemplo tomamos la fecha del dia.

4 - repeat_interval : Este job se va a ejecutar todos los dias a las 23:30

5 - enabled : En este ejemplo creamos el job y ya lo dejamos habilitado.

 

BEGIN

DBMS_SCHEDULER.CREATE_JOB (

   job_name             => 'JOB_M4_PROC_EJEMPLO',

   job_type             => 'PLSQL_BLOCK',

   job_action           => 'M4_PROC_EJEMPLO',

   start_date           => TRUNC(SYSDATE),

   repeat_interval      => 'FREQ=DAILY; byhour=23; byminute=30; bysecond=0;',

   enabled              =>  TRUE);

END;

/


Otro ejemplo ejecutando un Procedure que  recibe un parámetro de tipo fecha, el parámetro a recibir debe ser el sysdate (fecha del sistema).

 El Job se debe ejecutar a las 5:00 am todos los dias.

 

BEGIN

DBMS_SCHEDULER.CREATE_JOB (

   job_name             => 'JOB_ M4_EJEMPLO2 ',

   job_type             => 'PLSQL_BLOCK',

   job_action           => ' M4_PROC_EJEMPLO2(SYSDATE)',

   start_date           => TRUNC(SYSDATE),

   repeat_interval      => 'FREQ=DAILY; byhour=05; byminute=0; bysecond=0;',

   enabled              =>  TRUE);

END;

/


Como Activar el Modo Archive Log

Para activar el archive log hay que reinciar la base y cambiar de modo de NO ARCHIVE a ARCHIVE LOG

1 - Bajamos la Base de Datos

 $> sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Dom Feb 19 21:36:14 2023

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Conectado a:

Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production

SQL> shutdown immediate

Base de datos cerrada.

Base de datos desmontada.

Instancia ORACLE cerrada.


2 - Levantamos la base es estado MOUNT

SQL> startup mount

Instancia ORACLE iniciada.


Total System Global Area 4,0668E+10 bytes

Fixed Size                  5294184 bytes

Variable Size            5771364248 bytes

Database Buffers         3,4762E+10 bytes

Redo Buffers              128921600 bytes

Base de datos montada.


3 - Ejecutamos el cambio a ARCHIVE LOG

SQL> Alter database archivelog;

Base de datos modificada.

 

4 - Abrimos la base de datos

SQL> alter database open;

Base de datos modificada.


5 -  Verificamos

SQL> archivelog list

Modo log de la base de datos              Modo de Archivado

Archivado autom▒tico             Activado

Destino del archivo            USE_DB_RECOVERY_FILE_DEST

Secuencia de log en l▒nea m▒s antigua     163

Siguiente secuencia de log para archivar   165

Secuencia de log actual           165


Conclusiòn :  Cambiar a Modo Archive Log una base de datos implica bajar la base por lo tanto una baja del servicio, conviene dejarlo configurado antes de que la base este productiva.