Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Crear Diseño de tablas para Auditoría

Estas en el tema de Crear Diseño de tablas para Auditoría en el foro de Mysql en Foros del Web. Saludos mis estimados, Mi consulta radica en algo que ya tengo implementado y quiero mejorarlo en mi base de datos mysql. Yo manejo una tabla ...
  #1 (permalink)  
Antiguo 05/09/2011, 12:07
Avatar de djcandido  
Fecha de Ingreso: junio-2009
Ubicación: San Salvador
Mensajes: 50
Antigüedad: 15 años, 6 meses
Puntos: 0
Busqueda Crear Diseño de tablas para Auditoría

Saludos mis estimados, Mi consulta radica en algo que ya tengo implementado y quiero mejorarlo en mi base de datos mysql.

Yo manejo una tabla llamada "bitacora", esta es la estructura:
Código:
create table BITACORA
(
   ID_BITACORA          int not null,
   USUARIO_BITACORA     varchar(25) not null,
   IP_USUARIO           varchar(15) not null,
   FECHA_BITACORA       datetime not null,
   ACCION_BITACORA      text not null,
   primary key (ID_BITACORA)
);
En la columna "ACCION_BITACORA" registro el query ejecutado (update, insert, delete, select) por los usuarios, es decir, registro cada accion del usuario, actualmente NO LO MANEJO con triggers, pero ese es el objetivo al que quiero llegar, utilizar Triggers, pero la situacion que tengo es la siguiente:

La base de datos almacena informacion delicada de personas, como estado civil, genero, enfermedades, estados, etc. la informacion de las personas se actualiza todos los dias, entre los cambios mas frecuentes es el cambio de estado familiar y cambio de la persona a fallecido...

El objetivo propuesto (mision encomendada por el jefe) es saber lo siguiente:
¿Quien hizo el cambio? (el usuario)
¿a qué persona afectó? (persona registrada en el sistema)
¿qué atributo de la base de datos afectó?
¿qué valor tenía antes, y qué valor tiene hoy el registro? (dato antiguo y dato nuevo)
¿cuándo lo hizo?
etc.

Actualmente puedo responder a esas preguntas, pero me tardo alrededor de un día entero en contestarlas por la cantidad de datos que tiene la tabla "baitacora", pues como dije anteriormente, en la columna "ACCION_BITACORA" se almacena el query ejecutado por el usuario.

Mi consulta es la siguiente:
¿cómo puedo mejorar el diseño de la base de datos? para que sea mas eficiente el almacenamiento de las actividades ejecutadas por los usuarios y saber el dato anterior y el dato nuevo que tenía un registro, de ser necesario he pensado hacer una sola tabla con TODOS los atributos de las demas tablas de mi BD, para poder almacenar los datos antiguos alli pero no lo veo muy correcto que digamos.

he leído este articulo:
http://www.nobosti.com/spip.php?article404
y me parece muy bueno, pero necesito mas opiniones para lograr mi cometido.

Etiquetas: auditor, bitacora, diseño, djcandido
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:26.