viernes, 6 de diciembre de 2019

8. SOBRE LOS ARCHIVELOG EN ORACLE

·         Verificar si la base de datos se encuentra en modo Archivelog.

Sql>select log_mode from sys.v$database;

·          Sentencias de ejecución para realizar el cambio de la base de datos a modo Archivelog.

- Se debe incluir la ruta en la cual serán generados los archivos Archivelog. La siguiente sentencia modifica el archivo de parámetros de la base de datos. El cambio es aplicado una vez se reinicie la base de datos.

ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=/archivelog/cenpagos/' COMMENT='Modificacion para guardar los Archive log' SCOPE=SPFILE;

-        La siguiente sentencia extrae el valor que tiene asignado el parámetro log_archive_dest_1
select * from v$parameter where name='log_archive_dest_1';

Pasos a seguir para cambiar la base de datos a modo Archivelog.

- Bajar la base de datos, iniciar la base de datos en modo MOUNT.
- Alterar la base de datos modificándola a modo ARCHIVELOG
- Modificar los parámetros Log_archive_format con el formato de nombre con el cual serán generados los archivos ARCHIVELOG.
- Posterior a los procesos anteriores se debe abrir la base de datos

shutdown immediate;
startup mount;
alter database archivelog;
alter system set log_archive_format='Arc_litigios%t_%s_%r.arc' scope=spfile;
alter database open;

-        El parámetro LOG_ARCHIVE_START no se debe modificar en Oracle 10g.  Dicho parámetro debe tener un valor TRUE cuando la base de datos se encuentra sobre Oracle9i.

SQL>alter system set LOG_ARCHIVE_START=TRUE SCOPE=spfile;

-        El script permite validar el modo en el cual se encuentra la base de datos.

SQL>select log_mode from v$database;

-        El script suministra la información sobre el modo actual de la base de datos, la ruta en la cual se almacenan los archivos Archivelog. la secuencia  actual en la cual se encuentran los redolog y la siguiente secuencia.

SQL>archive log list;

-        El Script permite realizar una rotación de los redolog obligando a la base de datos a generar un Archivelog en caso de encontrarse en modo Archivelog.

SQL>alter system switch logfile;

- Sentencias de ejecución para realizar el cambio de la base de datos a modo NOArchivelog.
- Pasos a seguir para cambiar la base de datos a modo NOArchivelog.
- Bajar la base de datos, iniciar la base de datos en modo MOUNT.

SQL>shutdown immediate;
SQL>startup mount;

-         Alterar la base de datos modificándola a modo NOARCHIVELOG

SQL>alter database noarchivelog;

-         El parámetro log_archive_start ya no se usa a partir de Oracle 10g, por lo tanto se modifica para asignarle un valor por defecto.

                     SQL>alter system reset log_archive_start scope=spfile;



8.1 ACERCA DE LOS REDOLOGS

Recomendaciones.

Por organización siempre las bases de datos deberían mantener los grupos consecutivos iniciando desde 1.  No hacer las multiplexaciones de los redologs en sistemas ASM y filesystem al tiempo, ya que desmejora la respuesta.

Si está disponible ASM dejarlos sobre este sistema de archivos.

-        Las siguientes sentencias permiten validar la información de los archivos RedoLog.
La siguiente sentencia suministra información de la estructura de los Grupos de RedoLog.
Suministra el número del grupo, el número de secuencia de cada grupo RedoLog, cantidad de miembros del grupo y el estado actual del grupo.

SQL>SELECT * from V$LOG ;

-         La siguiente sentencia suministra información de los de RedoLog.
Suministra el número de grupo al cual pertenece el RedoLog, el tipo de archivo Log, la ruta y nombre del RedoLog

SQL> SELECT * from V$LOGfile ;

-         La siguiente sentencia forza a que la base de datos cambie o rote el archivo RedoLog que está utilizando.

SQL>ALTER SYSTEM SWITCH LOGFILE;
SQL>ALTER SYSTEM CHECKPOINT;

-        La siguiente sentencia permite crear un grupo de RedoLog con los respectivos miembros y tamaños de los mismos. El número de grupo lo asignará la base de datos.
Se recomienda crear por lo menos 5 grupos de 300MB cada uno.

SQL>ALTER DATABASE ADD LOGFILE ('UBICACION_1', 'UBICACION_2') SIZE 300M;

-        ELIMINACIÓN DE LOS REDOLOG  NO UTILIZADOS

La siguiente sentencia permite eliminar un grupo específico de RedoLog.
Es necesario después eliminar los archivos físicos RedoLog en el servidor

SQL>ALTER DATABASE DROP LOGFILE GROUP 3;

No hay comentarios:

Publicar un comentario