Está en la página 1de 5

Administración de

bases de datos

| Reto 3
Generar una bitácora de trabajo de
administración de Roberto
Nombre completo
basesCristhian
de datos
Estrada Castillo

Matrícula 21002516

Fecha de elaboración 26/Oct/2022

Nombre del Módulo Administración de Bases de Datos v1

Nombre del Asesor Norma Griselda Reyes


1 Introducción
Una bitácora de trabajo o fichero de registro log, se utiliza para registrar la información
acerca de los eventos que ocurren en el DBMS como, por ejemplo: instalación,
administración y explotación. Esta bitácora es útil para poder averiguar las posibles fallas o
realizar auditorías de las operaciones que los clientes realizan. Te invitamos a poner en
práctica lo aprendido en la Lección de bitácoras de trabajo del administrador de bases de
datos, resolviendo este Reto.

2 Caso de estudio
Instrucción: Revisa con detenimiento el siguiente caso.

Un administrador de base de datos de un hospital desea realizar una bitácora de trabajo


para registrar las operaciones de insert, update y delete sobre la tabla doctores. La creación
de la tabla doctores y bitácora de trabajo, se muestra a continuación:

CREATE DATABASE hospital;


use hospital;
CREATE TABLE doctores
(
id int NOT NULL,
nombre VARCHAR(25) NOT NULL,
apellido VARCHAR(25) NOT NULL,
especialidad VARCHAR(25) NOT NULL,
);

CREATE TABLE bitacora_trabajo


(
id_registro int NOT NULL AUTO_INCREMENT,
operacion VARCHAR(25) DEFAULT NULL,
usuario_cambio VARCHAR(25) DEFAULT NULL,
host_log VARCHAR(25) NOT NULL,
fecha_modificacion DATETIME DEFAULT NULL,
tabla_modificacion VARCHAR(50) NOT NULL,
PRIMARY KEY (id_registro)
)
ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
3 Bitácora de trabajo
Instrucción: Completa la plantilla con los triggers o disparadores que se muestran a
continuación:

a. log_doctores_insertar
b. INSERT ON
c. "INSERTAR"
d. log_doctores_actualizar
e. UPDATE ON
f. "ACTUALIZAR"
g. log_doctores_eliminar
h. DELETE ON
i. "ELIMINAR"
j. INSERT
k. UPDATE
l. DELETE
m. 'INSERTAR' ON
n. 'ACTUALIZAR' ON
o. 'ELIMINAR' ON

Plantilla para rellenar

DELIMITER //

CREATE TRIGGER log_doctores_insert AFTER INSERT_ON doctores

FOR EACH ROW INSERT INTO bitacora_trabajo(host_log, usuario_cambio,

operacion, fecha_modificacion, tabla_modificacion)

VALUES (SUBSTRING(USER(), (INSTR(USER(), '@')+1)),

SUBSTRING(USER(), 1, (INSTR(USER(), '@')-1)), ”INSERTAR”, NOW(),

"DOCTORES")

//

CREATE TRIGGER log_doctores_actualizar AFTER UPDATE ON doctores


FOR EACH ROW INSERT INTO bitacora_trabajo(host_log, usuario_cambio,

operacion, fecha_modificacion, tabla_modificacion)

VALUES (SUBSTRING(USER(), (INSTR(USER(), '@')+1)), SUBSTRING(USER(),

1, (INSTR(USER(), '@')-1)), ”ACTUALIZAR”, NOW(), "DOCTORES")

//

CREATE TRIGGER log_doctores_eliminar AFTER DELETE ON doctores

FOR EACH ROW INSERT INTO bitacora_trabajo(host_log, usuario_cambio,

operacion, fecha_modificacion, tabla_modificacion)

VALUES (SUBSTRING(USER(), (INSTR(USER(), '@')+1)),

SUBSTRING(USER(), 1, (INSTR(USER(), '@')-1)), ”ELIMINAR”, NOW(),

"DOCTORES")

//

4 Tabla bitácora de trabajo


Instrucción: Completa la tabla de la bitácora de trabajo de acuerdo con las consultas
mostradas, teniendo en cuenta que los registros iniciales de la tabla doctores y el usuario
identificado en la base de datos es root@localhost:

id nombre apellido especialidad


1546 Laura Flores Pediatría
1547 Jaime Valdez Cardiología
1548 Paulina Ferrer Ginecología
1549 Andrés Valdivia Ginecología

Consultas:

INSERT INTO doctores(id, nombre, apellido, especialidad)


VALUES ('1875','Amelia', 'Hernández', 'Neurología');

UPDATE doctores
SET especialidad='Urología' WHERE especialidad='Ginecología'

DELETE FROM doctores


WHERE id = '1549'

Tabla para rellenar

id_registro operación usuario_cambio host_log fecha_modificacion tabla_modificacion

LOCALHOST
1 INSERTAR ROOT 26/10/2022 Doctores

LOCALHOST
2 INSERTAR ROOT 26/10/2022 Doctores

LOCALHOST
3 INSERTAR ROOT 26/10/2022 Doctores

LOCALHOST
4 INSERTAR ROOT 26/10/2022 Doctores

LOCALHOST
5 INSERTAR ROOT 26/10/2022 Doctores

LOCALHOST
6 ACTUALIZA ROOT 26/10/2022 Doctores
R
LOCALHOST
7 ACTUALIZA ROOT 26/10/2022 Doctores
R
LOCALHOST
8 ELIMINAR ROOT 26/10/2022 Doctores

También podría gustarte