Mi lista de blogs

Mostrando entradas con la etiqueta Activar el modo de archive log de una base de datos Oracle. Mostrar todas las entradas
Mostrando entradas con la etiqueta Activar el modo de archive log de una base de datos Oracle. Mostrar todas las entradas

jueves, 13 de agosto de 2015

Activar el modo de archive log de una base de datos Oracle

Activar el modo de archive log de una base de datos Oracle

Abriremos la aplicación SQL Plus de Oracle 

sqlplus /nolog

Nos conectamos con un usuario con suficientes privilegios y ejecutamos el comando:

connect usuario/contraseña@NOMBRE_BASE_DATOS as sysdba

Si la base de datos está en modo OPEN Nos dará un error::

alter database archivelog;

Para poder cambiar la base de datos Oracle a modo archive log hay que iniciarla en modo "mount" 
Ejecutamos

shutdown immediate;
Resultado :

Database closed.
Database dismounted.
ORACLE instance shut down.

La iniciamos en modo "mount" con el comando:

startup mount;


Resultado comando:

ORACLE instance started.
..
..
..
Database mounted.

Para cambiar a modo archivado ejecutaremos el siguiente comando:

alter database archivelog;

Resultado :

Database altered.

Volveremos a inciar la base de datos:

alter database open;

Resultado comando:

Database altered.

Archivado automático:
comprobamos el valor del parámetro "log_archive_start", si está a "false" lo pondremos a "true". 

actual del parámetro ejecutaremos el siguiente comando:

show parameter log_archive_start;
Devolverá e:

NAME TYPE VALUE
------------------- -------- --------
log_archive_start boolean FALSE

Modificaremos el parámetro "log_archive_start" a "true" con el siguiente comando:

alter system set LOG_ARCHIVE_START=TRUE SCOPE=spfile;

Resultado comando:

System altered.
Al ejecutar "SCOPE=spfile" haremos que los cambios se guarden .

Para que los cambios tengan efecto es recomendable parar y volver a iniciar la base de datos:

shutdown immediate;
Iniciaremos la base de datos en modo normal:

startup;
Notas:

Para comprobar en qué modo está la base de datos:

select log_mode from v$database;

Resultado:

LOG_MODE
-------------------------
NOARCHIVELOG (está en modo no archivado)

select log_mode from v$database;

LOG_MODE
--------------------
ARCHIVELOG (está en modo archivado)

Otra forma:

archive log list;

Resultado:

Database log mode Archive Mode
Automatic archival Enabled
Archive destination C:/oracle/ora92/RDBMS
Oldest online log sequence 395
Next log sequence to archive 397
Current log sequence 397 
* Para ver el valor parámetro de archivado automático:

show parameter log_archive_start;

NAME TYPE VALUE
------------------- ----------- -----
log_archive_start boolean FALSE
DESACTIVAR EL MODO ARCHIVE LOG

Abriremos la aplicación SQL Plus de Oracle cmd

sqlplus /nolog

Nos conectamos con un usuario con suficientes privilegios a la base de datos Oracle a la que queramos desactivarle el modo Archive Log (ARCHIVELOG), con el comando:

connect usuario/contraseña@NOMBRE_BASE_DATOS as sysdba

Ejecutamos el siguiente comando para desactivar el modo archive log:

alter system archive log stop;

Mostrará :

System altered.

Para comprobar que se ha desactivado correctamente:

archive log list;

Mostrará el siguiente resultado:

Database log mode Archive Mode
Automatic archival Disabled
Archive destination C:/oracle/oradata/bdtest/archive
Oldest online log sequence 70
Next log sequence to archive 72
Current log sequence 72

A continuación os mostramos todo el contenido de la ventana de MS-DOS:

C:>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on Fri aug 13 12:30:36 2015

Copyright (c) 1999, 2014, Oracle Corporation. All rights reserved.

SQL> connect /@BDLOCAL as sysdba;
Connected.
SQL> select log_mode from v$database;

LOG_MODE
------------
NOARCHIVELOG

SQL> show parameter log_archive_start;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_start boolean FALSE
SQL> alter database archivelog;
alter database archivelog
*
ERROR at line 1:
ORA-01126: database must be mounted EXCLUSIVE and not open for this operation
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
Database mounted.
SQL> alter database archivelog;

Database altered.

SQL> select log_mode from v$database;

LOG_MODE
------------
ARCHIVELOG

SQL> alter database open;

Database altered.

SQL> show parameter log_archive_start;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_start boolean FALSE
SQL> alter system set LOG_ARCHIVE_START=TRUE SCOPE=spfile;

Sistema modificado.

SQL> show parameter log_archive_dest

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest string
...

SQL> ALTER SYSTEM ARCHIVE LOG STOP;
System altered.
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Disabled
Archive destination C:/oracle/oradata/bdtest/archive
Oldest online log sequence 70
Next log sequence to archive 60
Current log sequence 60