Limieza de logs en Oracle 11G

Limieza de logs en Oracle 11G: "
Hoy voy a describir la limpieza de logs con 11g ADRCI, bueno voy a describir la teoría porque en la práctica yo no he conseguido que esto funcione, se cambia pero no borra nada.

En versiones anteriores de oracle los archivos de trazas de udump, cdump y dbump se tenían que borrar a mano.

En Oracle 11g se con la ADR el proceso MMON se encargará de borrar los ficheros automáticamente en función de dos parámetros:

LONGP_POLICY (Periodos largos) Por defecto 365 días y borra Incidentes chequeos del estado de la base de datos

SHORTP_POLICY (short term) Por defecto 30 días y se encarga de trace y core dumps

El comandos de ADRCI show control muestra la configuración de estos valores:

adrci> show control
ADR Home = /u01/app/oracle/diag/rdbms/prueba/prueba:
*************************************************************************
ADRID                SHORTP_POLICY        LONGP_POLICY         LAST_MOD_TIME                            LAST_AUTOPRG_TIME                        LAST_MANUPRG_TIME                        ADRDIR_VERSION       ADRSCHM_VERSION      ADRSCHMV_SUMMARY     ADRALERT_VERSION     CREATE_TIME
-------------------- -------------------- -------------------- ---------------------------------------- ---------------------------------------- ---------------------------------------- -------------------- -------------------- -------------------- -------------------- ----------------------------------------
1095473802           720                  8760                 2010-07-07 08:46:56.405618 +08:00        2010-08-22 22:14:11.443356 +08:00                                                 1                    2                    76                   1                    2010-07-07 08:46:56.405618 +08:00

En este caso el valor por defecto son 720 horas (30 días) para los periodos cortos y 8760 horas (1 año) para los periodos largos.

Estos valores se puede cambiar utilizando el comando ADRCI ‘set control’

Un ejemplo de un cambio a 15 días

adrci> set control (SHORTP_POLICY =360)
adrci> show control
ADR Home = /u01/app/oracle/diag/rdbms/prueba/prueba:
*************************************************************************
ADRID                SHORTP_POLICY        LONGP_POLICY         LAST_MOD_TIME                            LAST_AUTOPRG_TIME                        LAST_MANUPRG_TIME                        ADRDIR_VERSION       ADRSCHM_VERSION      ADRSCHMV_SUMMARY     ADRALERT_VERSION     CREATE_TIME
-------------------- -------------------- -------------------- ---------------------------------------- ---------------------------------------- ---------------------------------------- -------------------- -------------------- -------------------- -------------------- ----------------------------------------
1095473802           360                  8760                 2010-08-27 09:36:09.385370 +08:00        2010-08-22 22:14:11.443356 +08:00                                                 1                    2                    76                   1                    2010-07-07 08:46:56.405618 +08:00

También se puede limpiar los ficheros manualmente utilizando el comando ‘purge’ de ADRCI (este se define en minutos no en horas).

Ejemplo para borrar todos los ficheros de más de 6 días

adrci> purge -age 8640 -type TRACE
adrci> show control
ADR Home = /u01/app/oracle/diag/rdbms/prueba/prueba:
*************************************************************************
ADRID                SHORTP_POLICY        LONGP_POLICY         LAST_MOD_TIME                            LAST_AUTOPRG_TIME                        LAST_MANUPRG_TIME                        ADRDIR_VERSION       ADRSCHM_VERSION      ADRSCHMV_SUMMARY     ADRALERT_VERSION     CREATE_TIME
-------------------- -------------------- -------------------- ---------------------------------------- ---------------------------------------- ---------------------------------------- -------------------- -------------------- -------------------- -------------------- ----------------------------------------
1095473802           360                  8760                 2010-08-27 09:36:09.385370 +08:00        2010-08-22 22:14:11.443356 +08:00        2010-08-27 09:50:07.399853 +08:00        1                    2                    76                   1                    2010-07-07 08:46:56.405618 +08:00

En los sql curiosos existe una página para cambiar la política de todos los ADRHOME de una máquina.

De todas formas como he dicho al principio está es la teoría yo no he logrado que esto funcione de manera correcta, a esto le hemos unido una política de borrado manual.


"

Comentarios

Entradas populares de este blog

Buscar la sesión por PID y ver la query SQL en Oracle

Como mover un indice de tipo LOB a un tablespace diferente

Eliminar procesos MySQL que están en estado SLEEP por determinado tiempo