Audit. Trail Cleanup en Oracle11gr2 Oracle11gr1 , Oracle10gr2 , Documento generado por Para el sitio Índice 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Introducción.................................................................................................................. 2 Disponibilidad del package DBMS_AUDIT_MGMT ................................................. 3 Borrado de archivos de trace ........................................................................................ 4 Crear un job para llevar a cabo limpiezas de trace ....................................................... 5 Borrar el job para borrar trace ...................................................................................... 7 Para mover las tablas de auditoría a otro tablespace .................................................... 8 Manejo de las propiedades de la limpieza y utilización de los audit. Trail.................. 9 Modificación del intervalo del Job de borrado........................................................... 11 Deshabilitar el job de eliminado de los registros de auditoría.................................... 12 Implementación en bases de datos 10g ...................................................................... 13 Referencias ................................................................................................................. 18 1. Introducción ¿Qué es el Audit Trail Clean? Es una nueva característica de Oracle11gr2 , la cual permite a través de un package realizar el manejo de los registros de auditoría, el package que realiza tan maravillosa tarea se llama DBMS_AUDIT_MGMT, este package permite manejar tanto registros a nivel de S.O. , XML, registros en la auditoría Standard, registros en la auditoría fina. Todo lo anterior provee una poderosa herramienta para llevar a cabo la mantención de estos archivos , que muchas veces pueden provocar inconvenientes en nuestra base de datos, Audit Trail Cleanup Página 2 de 18 2. Disponibilidad del package DBMS_AUDIT_MGMT Este package nace exclusivamente para Audit Vault 10.2.0.3 y el uso fuera de este utilitario no esta soportada, sin embargo , desde la versión 11gr2 está disponible de forma libre, aunque fue liberada para la versión 11gr1 especificamente en el patchset 11.1.0.7, además está disponible para la versión 10.2.0.3 en el parche 6989148 , también disponible en la versión 10.2.0.4 en el parche 6996030 No está soportado para versiones 9.2.0.x y 10.1.0.x Para más detalles de los parches, por favor referirse a la nota New Feature DBMS_AUDIT_MGMT To Manage And Purge Audit Information [ID 731908.1] https://support.oracle.com/CSP/ui/flash.html#tab=KBHome(page=KBHome&id=()),(page=KBNaviga tor&id=(bmDocTitle=New%20Feature%20DBMS_AUDIT_MGMT%20To%20Manage%20And%20P urge%20Audit%20Information&viewingMode=1143&bmDocID=731908.1&from=BOOKMARK&bmD ocType=BULLETIN&bmDocDsrc=DOCUMENT)) Audit Trail Cleanup Página 3 de 18 3. Borrado de archivos de trace Mediante el package DBMS_AUDIT_MGMT se puede realizar el borrado de los archivos , registros y XML generados por la activación de la auditoría. Ejemplo : SQL> exec dbms_audit_mgmt.clean_audit_trail ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_OS , use_last_arch_timestamp => FALSE ); Con esta forma de borrar , se eliminan todos los trace que se encuentran ubicados en la ruta asignada por el parámetro AUDIT_FILE_DEST, los únicos archivos que no se eliminan son los trace generados en la auditoría de las conexiones de SYS. Donde audit_trail_type puede ser : • DBMS_AUDIT_MGMT.AUDIT_TRAIL_ALL : Borra todos los registros de auditoría, ya sea , la auditoría fina (FGA) , la auditoría común (Audit Trail) y los archivos de auditoría generados en Sistema Operativo • DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD : Sólo borra los registros de la auditoría Standar (SYS.AUD$) • DBMS_AUDIT_MGMT.AUDIT_TRAIL_FGA_STD : Borra los registros de la auditoría fina (SYS.FGA_LOG$) • DBMS_AUDIT_MGMT.AUDIT_TRAIL_FILES : Borra los archivos de sistema operativo, ya sea, los traces como los XML • DBMS_AUDIT_MGMT.AUDIT_TRAIL_OS : Borra los archivos de sistema operativo • DBMS_AUDIT_MGMT.AUDIT_TRAIL_XML : Sólo borra los XML que se generan en Sistema Operativo , creados mediante la auditoría Todos esos valores son constantes definidas en el package DBMS_AUDIT_MGMT Donde use_last_arch_timestamp puede ser : • FALSE : Esto implica que va a borrar todos los trace , no importando en que fecha se generaron • TRUE : Esto implica que no va a borrar los trace que se han generado después de la generación del último archive Para borrar las entradas de la tabla de auditoría no importando si se generaron antes o después del último archive Ejemplo : SQL> exec dbms_audit_mgmt.clean_audit_trail ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD , use_last_arch_timestamp => FALSE ); Para borrar todos los archivos (XML,OS,SYS.AUD$,SYS.FGA_LOG$) que se han generado hasta el último archive generado Ejemplo : SQL> exec dbms_audit_mgmt.clean_audit_trail ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD , use_last_arch_timestamp => FALSE ); Audit Trail Cleanup Página 4 de 18 4. Crear un job para llevar a cabo limpiezas de trace El anterior punto hablaba de los packages para llevar a cabo limpiezas de las tablas de auditoría , en este item hablaremos de como implementar un package automático para llevar a cabo estas actividades. El formato de la sentencia para crear un job de limpieza de los archivos de auditoría es el siguiente BEGIN DBMS_AUDIT_MGMT.CREATE_PURGE_JOB audit_trail_type => audit_trail_purge_interval => audit_trail_purge_name => use_last_arch_timestamp => END; / ( <valor> <valor> <valor> <valor> , , , ); Ya hemos explicado los valores de los parámetros audit_trail_type y use_last_arch_timestamp Para audit_trail_purge_interval se define la cantidad de horas en que el proceso de limpieza es ejecutado Y en el parámetro audit_trail_purge_name , le ingresamos el nombre del Job Nota : Recordar que desde 10g como parte del Scheduler , los jobs ya no sólo son números, sino que también se les puede colocar nombre. Los ejemplos anteriores pero ejecutados mediante un job. Para realizar el borrado de los archivos , registros y XML generados por la activación de la auditoría, cada una hora , con un Scheduler llamado ELIMINA1 Ejemplo : SQL> exec dbms_audit_mgmt.create_purge_job ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_OS , audit_trail_purge_interval => 1 , audit_trail_purge_name => 'ELIMINA1' , use_last_arch_timestamp => FALSE ); Para borrar las entradas de la tabla de auditoría no importando si se generaron antes o después del último archive Ejemplo : SQL> exec dbms_audit_mgmt.create_purge_job ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD , audit_trail_purge_interval => 1 , audit_trail_purge_name => 'ELIMINA1' , use_last_arch_timestamp => FALSE ); Para borrar todos los archivos (XML,OS,SYS.AUD$,SYS.FGA_LOG$) que se han generado hasta el último archive generado Ejemplo : SQL> exec dbms_audit_mgmt.create_purge_job ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD , audit_trail_purge_interval => 1 , audit_trail_purge_name => 'ELIMINA1' , use_last_arch_timestamp => FALSE ); Para todos los anteriores casos , se genera un job (Scheduler) el cual puede ser consultado en Audit Trail Cleanup Página 5 de 18 SELECT owner "Dueno" , job_name "Nombre job", state "Estado" , run_count "Num exec" , system "Es de sistema" , repeat_interval "Intervalo" FROM DBA_SCHEDULER_JOBS WHERE job_name like 'ELIMINA1' Dueno ;Nombre job ;Estado ; Num exec;Es de sistema ;Intervalo -------;--------------;----------;---------;---------------;----------------------------SYS ;ELIMINA1 ;SCHEDULED ; 2;TRUE ;FREQ=HOURLY;INTERVAL=1 Audit Trail Cleanup Página 6 de 18 5. Borrar el job para borrar trace Para eliminar el Scheduler generado en el punto anterior , simplemente se debe ejecutar el procedimiento DBMS_AUDIT_MGMT.DROP_PURGE_JOB(audit_trail_purge_name => 'Nombre job' ) ; Audit Trail Cleanup Página 7 de 18 6. Para mover las tablas de auditoría a otro tablespace El movimiento de las tablas de auditoría siempre genera problemas, como no recordar en Oracle9i , el movimiento de la SYS.AUD$ , no estaba soportado, en Oracle10g si, pero había que crear una tabla de paso y muchas cosas más, pues en Oracle11gr2 Oracle por fin nos entrega una forma increíble de realizar este movimiento. Esto se lleva a cabo mediante el package DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION Por ejemplo , consultamos el tablespace donde se encuentra nuestra tabla de auditoría SYS.AUD$ PROD> select owner , segment_name , tablespace_name from dba_segments where segment_name like 'AUD$'; OWNER ;SEGMENT_NAME ;TABLESPACE_NAME ------------------;-----------------;---------------SYS ;AUD$ ;SYSTEM La moveremos al tablespace USERS exec DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_DB_STD, audit_trail_location_value => 'USERS'); Donde audit_trail_type es el tipo de auditoría que ya hemos descrito, pero teniendo en cuenta que solamente se puede mover la información que se encuentre en tablas de la base de datos. Y audit_trail_location es el nuevo tablespace Al consultar nuevamente la tabla de auditoría , veremos como se mueve a un nuevo tablespace PROD> select owner , segment_name , tablespace_name from dba_segments where segment_name like 'AUD$'; OWNER ;SEGMENT_NAME ;TABLESPACE_NAME ------------------;-----------------;---------------SYS ;AUD$ ;USERS El único inconveniente es que cuando es movido algún componente , se inválidan algunos objetos, por ejemplo, para el ejemplo que dimos, quedan 4 objetos inválidos PROD> select owner , object_name from dba_objects where status <> 'VALID'; OWNER ;OBJECT_NAME ------------------;------------------------------------------------------SYS ;DBA_FGA_AUDIT_TRAIL PUBLIC ;DBA_FGA_AUDIT_TRAIL SYS ;DBA_COMMON_AUDIT_TRAIL PUBLIC ;DBA_COMMON_AUDIT_TRAIL Audit Trail Cleanup Página 8 de 18 7. Manejo de las propiedades de la limpieza y utilización de los audit. Trail Se pueden manejar distintas características de los archivos de auditoría, por ejemplo el tamaño máximo que puede alcanzar uno de estos archivos o cuanto tiempo puede tener uno de estos archivos antes de comenzar a escribir en otro archivo, el formato para realizar estas modificaciones es el siguiente DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY( audit_trail_type <valor>, audit_trail_property <valor>, audit_trail_property_value <valor>) ; Donde el parámeto audit_trail_property puede ser • OS_FILE_MAX_SIZE : Puede tener un valor mínimo de 1 y máximo de 2.000.000 , todo expresado en Kb. • OS_FILE_MAX_AGE : Puede tener un valor mínimo de 1 y máximo de 497, todo expresado en días • DB_DELETE_BATCH_SIZE : Un mínimo de 100 y un máximo de 1.000.000, esto corresponde a la cantidad de registros (a nivel de base de datos) que son borrados en un sólo proceso • FILE_DELETE_BATCH_SIZE : Un mínimo de 100 y un máximo de 1.000.000, esto corresponde a la cantidad de archivos (a nivel de S.O.) que son borrados en un sólo proceso • CLEANUP_INTERVAL : Puede tener un mínimo de 1 y un máximo de 999, esto corresponde a cantidad de horas en que se lleva a cabo la limpieza. Para nuestros registros de auditoría (base de datos o S.O.) nosotros queremos lo siguiente Que cuando el tamaño del actual registro de auditoría a nivel de Sistema Operativo pese más de 1MB se cree uno nuevo BEGIN DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_OS , audit_trail_property => DBMS_AUDIT_MGMT.OS_FILE_MAX_SIZE , audit_trail_property_value => 1024 ); END; / O que el registro actual de auditoría no tenga más de 5 días de antigüedad BEGIN DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_OS , audit_trail_property => DBMS_AUDIT_MGMT.OS_FILE_MAX_AGE , audit_trail_property_value => 5 ); END; / Y si quiero borrar de a 100 registros de la tabla SYS.AUD$ cada vez que se ejecuta el job automático que setee en los puntos anteriores, debiese escribir el siguiente código BEGIN Audit Trail Cleanup Página 9 de 18 DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD, audit_trail_property => DBMS_AUDIT_MGMT.DB_DELETE_BATCH_SIZE, audit_trail_property_value => 100 ); END; / Audit Trail Cleanup Página 10 de 18 8. Modificación del intervalo del Job de borrado Si se quiere llevar a cabo una modificación del intervalo de ejecución del job de eliminado de los registros y trace de auditoría se puede efectuar una llamada al procedimiento DBMS_AUDIT_MGMT.SET_PURGE_JOB_INTERVAL Por ejemplo se crea un job que se ejecute cada una hora SQL> exec dbms_audit_mgmt.create_purge_job ( audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_OS , audit_trail_purge_interval => 1 , audit_trail_purge_name => 'ELIMINA1' , use_last_arch_timestamp => FALSE ); PROD> SELECT owner "Dueno" , 2 job_name "Nombre job", 3 state "Estado" , 4 run_count "Num exec" , 5 system "Es de sistema" , 6 repeat_interval "Intervalo" 7 FROM DBA_SCHEDULER_JOBS 8 WHERE job_name like 'ELIMINA1' 9 ; Dueno ;Nombre job ;Estado ; Num exec;Es de sistema ;Intervalo -------;-----------;----------;---------;---------------;----------------------SYS ;ELIMINA1 ;SCHEDULED ; 1;TRUE ;FREQ=HOURLY;INTERVAL=1 Pero después de esto se le indica que el período de ejecución es cada 10 horas BEGIN DBMS_AUDIT_MGMT.SET_PURGE_JOB_INTERVAL( AUDIT_TRAIL_PURGE_NAME => 'ELIMINA1', AUDIT_TRAIL_INTERVAL_VALUE => 10 ); END; / Consultando nuevamente , se ve modificado el Intervalo del Scheduler Dueno ;Nombre job ;Estado ; Num exec;Es de sistema ;Intervalo ------;------------;----------;---------;---------------;-----------------------SYS ;ELIMINA1 ;SCHEDULED ; 1;TRUE ;FREQ=HOURLY;INTERVAL=10 Audit Trail Cleanup Página 11 de 18 9. Deshabilitar el job de eliminado de los registros de auditoría Para deshabilitar un job de eliminado , se debe ejecutar el siguiente código BEGIN DBMS_AUDIT_MGMT.SET_PURGE_JOB_STATUS( audit_trail_purge_name => 'ELIMINA1', audit_trail_status_value => DBMS_AUDIT_MGMT.PURGE_JOB_DISABLE); END; / Pudiendo dejarlo habilitado o deshabilitado con las constantes DBMS_AUDIT_MGMT.PURGE_JOB_ENABLE y DBMS_AUDIT_MGMT.PURGE_JOB_DISABLE Audit Trail Cleanup Página 12 de 18 10. Implementación en bases de datos 10g Tal cual lo habíamos mencionado está gran característica también está disponible en ambientes 10.2.0.3 , aplicando el parche 6989148 Y para ambientes 10.2.0.4 aplicando el parche 6996030 En este punto explicaremos el como instalar este parche Lo que primero se debe hacer es bajar este parche desde Metalink A continuación se debe bajar la base de datos sino el parche arroja un error [oracle@oracle11g OPatch]$ sqlplus /nolog SQL*Plus: Release 10.2.0.4.0 - Production on Mon Mar 15 06:54:48 2010 Copyright (c) 1982, 2007, Oracle. All Rights Reserved. SQL> conn / as sysdba Connected. SQL> shutdown immediate Database closed. Audit Trail Cleanup Página 13 de 18 Database dismounted. ORACLE instance shut down. SQL> quit Agregamos la ruta del OPatch al PATH export PATH=$PATH:/u01/app/oracle/product/10.2.0/db_1/OPatch Se descomprime el archivo [oracle@oracle11g parche_AUDIT_TRAIL_CLEAN]$ unzip p6996030_10204_Linuxx86.zip Archive: p6996030_10204_Linux-x86.zip creating: 6996030/ creating: 6996030/files/ creating: 6996030/files/lib/ creating: 6996030/files/lib/libserver10.a/ inflating: 6996030/files/lib/libserver10.a/aud.o inflating: 6996030/files/lib/libserver10.a/kspare.o inflating: 6996030/files/lib/libserver10.a/kza.o inflating: 6996030/files/lib/libserver10.a/kzam.o inflating: 6996030/files/lib/libserver10.a/kzax.o inflating: 6996030/files/lib/libserver10.a/kzft.o inflating: 6996030/files/lib/libserver10.a/psdsys.o inflating: 6996030/files/lib/libserver10.a/szaud.o inflating: 6996030/files/lib/libserver10.a/zlle.o creating: 6996030/files/rdbms/ creating: 6996030/files/rdbms/admin/ inflating: 6996030/files/rdbms/admin/catamgt.sql inflating: 6996030/files/rdbms/admin/catlbacs.sql inflating: 6996030/files/rdbms/admin/catnools.sql inflating: 6996030/files/rdbms/admin/dbmsamgt.sql inflating: 6996030/files/rdbms/admin/prvtamgt.plb creating: 6996030/etc/ creating: 6996030/etc/config/ inflating: 6996030/etc/config/inventory inflating: 6996030/etc/config/actions creating: 6996030/etc/xml/ inflating: 6996030/etc/xml/GenericActions.xml inflating: 6996030/etc/xml/ShiphomeDirectoryStructure.xml inflating: 6996030/README.txt Y se procede a aplicar con el OPatch [oracle@oracle11g 6996030]$ opatch apply Invoking OPatch 10.2.0.4.2 Oracle Interim Patch Installer version 10.2.0.4.2 Copyright (c) 2007, Oracle Corporation. All rights reserved. Audit Trail Cleanup Página 14 de 18 Directorio RaÃ-z de Oracle : /u01/app/oracle/product/10.2.0/db_1 Inventario Central: /u01/app/oracle/oraInventory de : /etc/oraInst.loc Versión de OPatch : 10.2.0.4.2 Versión de OUI : 10.2.0.4.0 Ubicación de OUI : /u01/app/oracle/product/10.2.0/db_1/oui Ubicación de Archivo Log : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2010-03-15_06-54-22AM.log ApplySession aplicando el parche temporal '6996030' al directorio raÃ-z de Oracle '/u01/app/oracle/product/10.2.0/db_1' Running prerequisite checks... Prerequisite check "CheckActiveFilesAndExecutables" failed. The details are: Following executables are active : /u01/app/oracle/product/10.2.0/db_1/bin/oracle ApplySession failed during prerequisite checks: Prerequisite check "CheckActiveFilesAndExecutables" failed. Sistema intacto, OPatch no intentará restaurar el sistema OPatch failed with error code 74 [oracle@oracle11g 6996030]$ opatch apply Invoking OPatch 10.2.0.4.2 Oracle Interim Patch Installer version 10.2.0.4.2 Copyright (c) 2007, Oracle Corporation. All rights reserved. Directorio RaÃ-z de Oracle : /u01/app/oracle/product/10.2.0/db_1 Inventario Central: /u01/app/oracle/oraInventory de : /etc/oraInst.loc Versión de OPatch : 10.2.0.4.2 Versión de OUI : 10.2.0.4.0 Ubicación de OUI : /u01/app/oracle/product/10.2.0/db_1/oui Ubicación de Archivo Log : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2010-03-15_06-55-09AM.log ApplySession aplicando el parche temporal '6996030' al directorio raÃ-z de Oracle '/u01/app/oracle/product/10.2.0/db_1' Running prerequisite checks... Prerequisite check "CheckActiveFilesAndExecutables" failed. The details are: Following executables are active : /u01/app/oracle/product/10.2.0/db_1/bin/oracle ApplySession failed during prerequisite checks: Prerequisite check "CheckActiveFilesAndExecutables" failed. Sistema intacto, OPatch no intentará restaurar el sistema OPatch failed with error code 74 [oracle@oracle11g 6996030]$ opatch apply Invoking OPatch 10.2.0.4.2 Oracle Interim Patch Installer version 10.2.0.4.2 Copyright (c) 2007, Oracle Corporation. All rights reserved. Directorio RaÃ-z de Oracle : /u01/app/oracle/product/10.2.0/db_1 Inventario Central: /u01/app/oracle/oraInventory de : /etc/oraInst.loc Versión de OPatch : 10.2.0.4.2 Audit Trail Cleanup Página 15 de 18 Versión de OUI : 10.2.0.4.0 Ubicación de OUI : /u01/app/oracle/product/10.2.0/db_1/oui Ubicación de Archivo Log : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2010-03-15_06-55-32AM.log ApplySession aplicando el parche temporal '6996030' al directorio raÃ-z de Oracle '/u01/app/oracle/product/10.2.0/db_1' Running prerequisite checks... OPatch ha detectado un directorio raÃ-z de Oracle de no cluster del inventario y sólo aplicará un parche al sistema local. Please shutdown Oracle instances running out of this ORACLE_HOME on the local system. (Oracle Home = '/u01/app/oracle/product/10.2.0/db_1') Is the local system ready for patching? [y|n] y User Responded with: Y Realizando copia de seguridad de los archivos e inventario (no para rollback automático) del directorio raÃ-z de Oracle Realizando copia de seguridad de los archivos afectados por el parche '6996030' para restauración. Tardará unos minutos... Realizando copia de seguridad de los archivos afectados por el parche '6996030' para rollback. Tardará unos minutos... Aplicando parche a componente oracle.rdbms, 10.2.0.4.0... Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/aud.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/kspare.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/kza.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/kzam.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/kzax.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/kzft.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/psdsys.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/szaud.o" Actualizando el archivo de almacenamiento "/u01/app/oracle/product/10.2.0/db_1/lib/libserver10.a" con "lib/libserver10.a/zlle.o" Copiando archivo en "/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catamgt.sql" Copiando archivo en "/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catlbacs.sql" Copiando archivo en "/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catnools.sql" Copiando archivo en "/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/dbmsamgt.sql" Copiando archivo en "/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/prvtamgt.plb" Ejecutando la utilidad make para el destino ioracle ApplySession agregando el parche temporal '6996030' al inventario Verifying the update... Inventory check OK: Patch ID 6996030 is registered in Oracle Home inventory with proper meta-data. Files check OK: Files from Patch ID 6996030 are present in Oracle Home. El sistema local tiene parches y se puede reiniciar. OPatch succeeded. Audit Trail Cleanup Página 16 de 18 Se procede a levantar la base de datos y se ejecutan las siguientes instrucciones SQL> @?/rdbms/admin/catamgt.sql SQL> @?/rdbms/admin/dbmsamgt.sql SQL> @?/rdbms/admin/ prvtamgt.plb Después de lo anterior , se puede llevar a cabo una validación mediante el OPatch , debe aparecer registrado dentro del inventario, para ello ejecutar [oracle@oracle11g OPatch]$ ./opatch lsinventory Invoking OPatch 10.2.0.4.2 Oracle Interim Patch Installer version 10.2.0.4.2 Copyright (c) 2007, Oracle Corporation. All rights reserved. Directorio RaÃ-z de Oracle : /u01/app/oracle/product/10.2.0/db_1 Inventario Central: /u01/app/oracle/oraInventory de : /etc/oraInst.loc Versión de OPatch : 10.2.0.4.2 Versión de OUI : 10.2.0.4.0 Ubicación de OUI : /u01/app/oracle/product/10.2.0/db_1/oui Ubicación de Archivo Log : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2010-03-15_07-08-20AM.log Lsinventory Output file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/lsinv/lsinventory2010-03-15_07-0820AM.txt -------------------------------------------------------------------------------Productos de nivel superior instalados (2): Oracle Database 10g Oracle Database 10g Release 2 Patch Set 3 Hay 2 productos instalados en este directorio raÃ-z de Oracle. 10.2.0.1.0 10.2.0.4.0 Parches temporales (1) : Patch 6996030 : applied on Mon Mar 15 06:57:47 CLT 2010 Created on 21 Oct 2008, 06:57:58 hrs PST8PDT Bugs fixed: 6964283, 6940487, 4740049, 6996030, 6954407, 6023472, 4085593, 6340297 6655588, 6726958 -------------------------------------------------------------------------------OPatch succeeded. Audit Trail Cleanup Página 17 de 18 11. Referencias http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10577/d_audit_mgmt.htm New Feature DBMS_AUDIT_MGMT To Manage And Purge Audit Information [ID 731908.1] https://support.oracle.com/CSP/ui/flash.html#tab=KBHome(page=KBHome&id=()),(page=KBNaviga tor&id=(bmDocTitle=New%20Feature%20DBMS_AUDIT_MGMT%20To%20Manage%20And%20P urge%20Audit%20Information&viewingMode=1143&bmDocID=731908.1&from=BOOKMARK&bmD ocType=BULLETIN&bmDocDsrc=DOCUMENT)) Audit Trail Cleanup Página 18 de 18