ADRCI: Limpieza de directorios de diagnóstico
En versiones anteriores a la 11g, los archivos de traza que solíamos encontrar directorios udump,cdump,dbdump había que borrarlos a mano. En Oracle 11g se puede seguir haciendo esta limpieza a mano aunque es mejor realizarla con la herramienta que nos proporciona ADRCI
Repasamos alguna de las características de esta nueva estructura de diagnóstico que nos presenta oracle con la versión 11g:
- Los archivos de traza por defecto los encontramos ahora en $ORACLE_BASE/diag
- Sigue existiendo un alert.log que registra los errores de base de datos.
- Los archivos de alerta ahora tienen formato xml
Ejemplo:
$ORACLE_BASE/diag/rdbms/orcl/orcl/alert/log.xml
- Tenemos la herramienta adrci con la que podemos ver y gestionar estos archivos
Ejemplo
adrci> show alert -tail
Uno de los problemas que siempre se nos plantea es el mantenimiento de los logs es por ello por lo que nos vamos a centrar en la opción PURGE de ADRCI
Con el usuario oracle de nuestra máquina tecleamos el comando adrci
[ora11g@prueba ~]$ adrci
ADRCI: Release 11.2.0.1.0 - Production on Mon Apr 7 10:54:51 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
ADR base = "/oracle11g"
adrci>
La opción purge sería la que usaríamos para realizar esta limpieza. Para ver las opciones que nos ofrece purge, escribimos en la línea de comandos adrci help purge
adrci> help purge
Usage: PURGE [[-i <id1> | <id1> <id2>] |
[-age <mins> [-type ALERT|INCIDENT|TRACE|CDUMP|HM|UTSCDMP]]]:
Purpose: Purge the diagnostic data in the current ADR home. If no
option is specified, the default purging policy will be used.
Options:
[-i id1 | id1 id2]: Users can input a single incident ID, or a
range of incidents to purge.
[-age <mins>]: Users can specify the purging policy either to all
the diagnostic data or the specified type. The data older than <mins>
ago will be purged
[-type ALERT|INCIDENT|TRACE|CDUMP|HM|UTSCDMP]: Users can specify what type of
data to be purged.
Examples:
purge
purge -i 123 456
purge -age 60 -type incident
Antes de lanzar el comando purge, tenemos que especificar el home en el cual tenemos nuestras trazas sobre todo si en nuestra máquina tenemos más de un home
Cuando escribimos el comando adrci nos muestra nuestro ADR base. Tenemos que establecer la ruta donde se encuentran nuestros directorios de traza. Esto lo hacemos con un set home
[ora11g@sella ~]$ adrci
ADRCI: Release 11.2.0.1.0 - Production on Mon Apr 7 11:02:00 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
ADR base = "/oracle11g"
adrci> set home diag/rdbms/dba11g/dba11g/
adrci>
Como vemos, establecemos la ruta a partir de la base que ya la tenemos seteada
una vez establecido nuestro ADR home, entonces podremos lanzar el comando purge.
Mostramos algunos ejemplos para limpiar las trazas
Para limpiar todos los ficheros de trazas más antiguos a un día (1440 minutos)
adrci> purge -age 1440
Nota:incluye los core files: cdmp*
Limpieza de core files mayores a 6 días
adrci> purge -age 8640 -type CDUMP
Puede que para limpiar completamente sea necesario lanzar el siguiente comando
adrci> purge -age 8640 -type UTSCDMP
Para limpiar las alertas (ficheros xml) más antiguos que una hora
adrci> purge -age 60 -type ALERT