187888261 Monitoreo y Auditoria de La Base de Datos
-
Upload
greysi-vallecillo -
Category
Documents
-
view
227 -
download
0
Transcript of 187888261 Monitoreo y Auditoria de La Base de Datos
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
1/21
Monitoreo y Auditora de la
Base de DatosMonitoreo1.- Monitoreo general de un DBMS
2.- Monitoreo de espacio en disco.
3.- Monitoreo de logs.
4.- Monitoreo de Memoria compartida
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
2/21
Instituto Tecnolgico de
Culiacn Equipo #5
Integrantes:
Alvarado Arellano Armando
Gaxiola Rojas Carlos Mario
Hernndez Estolano Ivn Alonso
Ontiveros Nez Jos Luis
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
3/21
Monitoreo general de un
DBMS Qu es la Auditora de BD?
Es el proceso que permite medir, asegurar, demostrar, monitorear yregistrar los accesos a la informacin almacenada en las bases dedatos incluyendo la capacidad de determinar:
Quin accede a los datos. Cundo se accedi a los datos.
Desde qu tipo de dispositivo/aplicacin.
Desde que ubicacin en la Red.
Cul fue la sentencia SQL ejecutada.
Cul fue el efecto del acceso a la base de datos.
Es uno de los procesos fundamentales para apoyar laresponsabilidad delegada a IT por la organizacin frente a lasregulaciones y su entorno de negocios o actividad.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
4/21
Objetivos Generales de la
Auditora de BD Disponer de mecanismos que permitan tener trazas de
auditora completas y automticas relacionadas con elacceso a las bases de datos incluyendo la capacidadde generar alertas con el objetivo de:
Mitigar los riesgos asociados con el manejoinadecuado de los datos.
Apoyar el cumplimiento regulatorio.
Satisfacer los requerimientos de los auditores.
Evitar acciones criminales.
Evitar multas por incumplimiento.
La importancia de la auditora del entorno de bases dedatos radica en que es el punto de partida para poderrealizar la auditora de las aplicaciones que utiliza estatecnologa.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
5/21
La Auditora de BD es importante
porque: Toda la informacin financiera de la organizacin
reside en bases de datos y deben existir controlesrelacionados con el acceso a las mismas.
Se debe poder demostrar la integridad de lainformacin almacenada en las bases de datos.
Las organizaciones deben mitigar los riesgosasociados a la prdida de datos y a la fuga deinformacin.
La informacin confidencial de los clientes, sonresponsabilidad de las organizaciones.
Los datos convertidos en informacin a travs de
bases de datos y procesos de negocios representan elnegocio.
Las organizaciones deben tomar medidas muchoms all de asegurar sus datos.
Deben monitorearse perfectamente a fin de conocer
quin o qu les hizo exactamente qu, cundo y cmo.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
6/21
Mediante la auditora de bases
de datos se evaluar:Definicin de estructuras fsicas y
lgicas de las bases de datos.
Control de carga y mantenimiento
de las bases de datos.Integridad de los datos y proteccin
de accesos.
Estndares para anlisis yprogramacin en el uso de bases dedatos.
Procedimientos de respaldo y de
recuperacin de datos.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
7/21
Aspectos Claves
No se debe comprometer el desempeo de las bases de datos Soportar diferentes esquemas de auditora.
Se debe tomar en cuenta el tamao de las bases de datos aauditar y los posibles SLA establecidos.
Segregacin de funciones
El sistema de auditora de base de datos no puede seradministrado por los DBA del rea de IT.
Proveer valor a la operacin del negocio
Informacin para auditora y seguridad.
Informacin para apoyar la toma de decisiones de la organizacin.
Informacin para mejorar el desempeo de la organizacin.
Auditora completa y extensiva
Cubrir gran cantidad de manejadores de bases de datos.
Estandarizar los reportes y reglas de auditora.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
8/21
Monitoreo de espacio libre en
discosComo DBA una de las responsabilidades es supervisar el espacioen disco. Siempre hay que asegurarse de que se tiene suficientepara sus bases de datos, copias de seguridad de bases de datos ycualquier otro tipo de archivos que va a almacenar en el servidor. Sino controla su espacio en disco y se asegura de que tienes espaciosuficiente, con el tiempo uno de sus procesos crticos de bases dedatos o componentes va a fracasar porque no se puede asignar el
espacio en disco que necesita.
Dentro de SQL Server hay un procedimiento no documentado quenos puede ayudar a cumplir este cometido. El procedimiento esXP_FIXEDDRIVES, no lleva parmetros ni nada y nos regresatodos los discos a los que tiene acceso SQL Server y su espaciodisponible en Megabytes.
Es muy sencillo utilizarlo, solo basta con ejecutar el comandoxp_fixeddrives de vez en cuando desde el Analizador de consultaspara revisar la cantidad de espacio libre, aunque este mtodoconsume demasiado tiempo para los administradores de bases dedatos. Un mtodo mejor sera automatizar la ejecucin de estecomando peridicamente para revisar la cantidad de espacio libre.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
9/21
Algunas tareas de DBA donde la informacin
de espacio libre puede ser til:
- La primera que se alerte al DBA cuando el espacio libre cae por debajo de un umbralespecfico en cualquier unidad de SQL Server.- La segunda sera la de realizar un seguimiento de la historia el espacio libre para lagestin de la capacidad de espacio en disco.La forma de construir un proceso para alertar a la DEA, cuando cualquiera de lasunidades de disco de SQL Server cae por debajo de un umbral predeterminado. Paraobtener la informacin xp_fixeddrives en una tabla temporal que se utiliza el siguiente T-SQL.createtable #FreeSpace(
Drive char(1),MB_Freeint)insertinto #FreeSpaceexecxp_fixeddrivesA continuacin, por cada unidad se recupera la informacin de espacio libre a partir deesta tabla temporal y se compara con un umbral que se ha fijado para cada unidad. Si lacantidad de espacio libre cae por debajo del valor umbral determinado para la unidad,enviar alerta al DBA mediante xp_sendmail. Aqu est una muestra de un cdigo quehace precisamente eso.declare @MB_Freeintcreatetable #FreeSpace(Drive char(1),MB_Freeint)insertinto #FreeSpaceexecxp_fixeddrivesselect @MB_Free = MB_Freefrom #FreeSpacewhere Drive = 'C'-- Free Spaceon C drive LessthanThresholdif @MB_Free< 1024execmaster.dbo.xp_sendmail@recipients ='[email protected]',@subject ='SERVER X - FreshSpaceIssueon C Drive',@message = 'Free spaceon C Drive has droppedbelow 1 gig'
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
10/21
Esta alerta de espacio libre bajo permite tiempo al DBA pararesolver el problema de espacio libre antes de que sea
crtico, y provoque procesos fallidos. Tenga en cuenta que elcdigo anterior tiene un umbral diferente de espacio librepara cada unidad.Otro uso de xp_fixeddrives podra ser la de controlar el usode espacio en disco a travs del tiempo. Para recopilar lainformacin de espacio libre a intervalos regulares, por
ejemplo, semanal y lo almacena en una tabla de base dedatos.Mediante la recopilacin de informacin de espacio libre en eltiempo y almacenarlo en una tabla del servidor SQLpermanente que ser capaz de producir un cuadro detendencias que muestra el espacio en disco extra deconsumo. Al comparar la cantidad de espacio libre entre dos
puntos sobre el grfico que ser capaz de determinar elespacio de disco consumido entre esos intervalos.El monitoreo del espacio disponible en disco y las tasas decrecimiento son un par de cosas que un DBA debe realizar.Sin vigilancia se corre el riesgo de quedarse sin espacio ycausando graves problemas para su aplicacin.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
11/21
Monitoreo de log. Monitorear el log regularmente puede ayudarnos a
resolver varios problemas dentro de nuestros sistemas,ya que este puede indicarnos si existen demasiadastransacciones realizadas por una sola aplicacin, quepodra resultar en un mal diseo o simplemente lanecesidad de planear mejor los recursos de log en
nuestro servidor de base de datos. Es muy importante tener en cuenta que si el log de
transacciones llegara a saturarse, SQL Server no podrrealizar ms cambios dentro de nuestra base de datos.
La manera de monitorear un log de transacciones,
puede llevarse a cabo de 2 maneras, una de ellas esmediante un comando desde el analizador de consultasy la otra utilizando los contadores de SQL Server desdeel sistema operativo.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
12/21
Contador
Descripcin
Log Bytes Flushed/sec
Nmero total de bytes del log de transacciones vaciados
Log Flushes/sec
Nmero de vaciados del log de transacciones
Log FlushWaits/sec
Nmero de confirmaciones (commit) en espera al momento de
vaciar el log de transacciones.
Percent Log Used
Porcentaje del log de transacciones usado.
Log File(s) Size(KB)
Tamao total del log de transacciones de la base de datos
Log Cache Hit Ratio
Lecturas realizadas a travs de la cach del administrador de
registro.
Desde el analizador de consultas ejecutar el comandoDBCC SQLPERF(LOGSPACE).
Utilizando los contadores de SQL Server que sedescriben a continuacin.
Situaciones en las que se produce mucha actividad en el log de transacciones
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
13/21
Algunas de las situaciones por la que podra presentarse mucha
actividades en el log de transacciones y saturarlo son:
Cargar informacin en una tabla que tiene indices. SQLServer almacena en el log todos los inserts y cambios en losndices. Cuando se carga en tablas que no tienen indicesSQL Server solo reserva extents para el log.
Transacciones que realizan muchas modificaciones (INSERT,UPDATE,DELETE) a una tabla en una sola transaccin. Esto
generalmente occurre cuando la sentencia WHERE es muygeneral, causando que muchos registros sean modificados.
Expandiendo el log de transacciones Expandir un log de transacciones debe de realizarse
solamente si en verdad es requerido por la aplicacin y nosolo por el echo de asignar ms espacio, ya que para ello
existen los respaldos del log de transacciones en donde sevacia el espacio ocupado del log.
Para asignar espacio de log a una base de datos puesrealizarse mediante el SQL Server Enterprise Manager o lasentencia ALTER DATABASE, en esta caso hablaremossolamente de la sentencia ALTER DATABASE
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
14/21
Ejemplo:
Agregar dos archivos de log a una base de datos
El ejemplo siguiente agrega dos archivos de log de 5 MB a una base de datos.
USE master
GO
ALTER DATABASE Test1
ADD LOGFILE
( NAME = test1log2,
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\test2log.ldf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB),
( NAME = test1log3,
FILENAME = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\test3log.ldf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB)
GO
http://www.php.net/loghttp://www.php.net/filehttp://www.php.net/filehttp://www.php.net/log -
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
15/21
Monitoreo de Memoria
compartida
PGA DE ORACLE (REA GLOBALDE PROGRAMA)
SGA de oracle (Sistema de reaGlobal)
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
16/21
PGA DE ORACLE (REAGLOBAL DE PROGRAMA) Un PGA es una regin de memoria que contiene datose informacin de control para un proceso de servidor.
Es la memoria no compartida creada por la base dedatos Oracle cuando un proceso de servidor se hainiciado. El acceso a la PGA es exclusivo para elproceso del servidor. Hay un PGA para cada proceso
de servidor. Procesos en segundo plano tambin seasignan sus propios PGA. La memoria total utilizadapor todos los PGAs individuales se conoce como elejemplo total de memoria PGA,y la recogida dePGAs individuales se refiere como el ejemplo total dela PGA,o simplemente instancia de la PGA.Puede
utilizar los parmetros de inicializacin de base dedatos para definir el tamao de la instancia de la PGA,no PGA individuales.
El PGA puede ser crtico para el rendimiento,
especialmente si la aplicacin est haciendo un grannmero de clases. Operaciones de ordenacin se
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
17/21
SGA de oracle (Sistema derea Global) Es un conjunto de reas de memoria compartida quese dedican a un Orculo "instancia" (un ejemplo es los
programas de bases de datos y la memoria RAM).
Sirve para facilitar la transferencia de informacin entreusuarios y tambin almacena la informacin estructuralde la BD ms frecuentemente requerida.
En los sistemas de bases de datos desarrollados por laCorporacin Oracle , el rea global del sistema (SGA)forma parte de la memoria RAM compartida por todoslos procesos que pertenecen a una sola base de datosOracle ejemplo. El SGA contiene toda la informacin
necesaria para la operacin de la instancia. La SGA se divide en varias partes:
1.- Bu ffers de BD, Database Buffer Cache2.- Buffer Redo Log3.- rea de SQL Compartido, Shared SQL Pool
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
18/21
Buffers de BD, DatabaseBuffer Cache Es el cach que almacena los bloques de datos leidos de lossegmentos de datos de la BD, tales como tablas, ndices y
clusters. Los bloques modificados se llamas bloques sucios.El tamao de buffer cach se fija por el parmetroDB_BLOCK_BUFFERS del fichero init.ora.
Plan de ejecucin de la sentencia SQL. Texto de la sentencia.
Lista de objetos referenciados.
Comprobar si la sentencia se encuentra en el rea compartida.
Comprobar si los objetos referenciados son los mismos.
Comprobar si el usuario tiene acceso a los objetos referenciados.
Como el tamao del buffer suele ser pequeo paraalmacenar todos los bloques de datos leidos, su gestin sehace mediante el algoritmo LRU.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
19/21
Buffer Redo Log
Los registros Redodescriben los cmbiosrealizados en la BD y son escritos en losficheros redo logpara que puedan serutilizados en las operaciones de
recuperacin hacia adelante, roll-forward,durante las recuperaciones de la BD. Peroantes de ser escritos en los ficheros redo logson escritos en un cach de la SGA llamadoredo log buffer. El servidor escribeperidicamente los registros redo logen losficheros redo log.El tamao del buffer redo log se fija por elparmetro LOG_BUFFER.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
20/21
rea de SQL Compartido,Shared SQL Poo l
En esta zona se encuentran las sentencias SQL que han sido analizadas. El analisissintctico de las sentencias SQL lleva su tiempo y Oracle mantiene las estructurasasociadas a cada sentencia SQL analizada durante el tiempo que pueda para ver sipuede reutilizarlas. Antes de analizar una sentencia SQL, Oracle mira a ver siencuentra otra sentencia exactamente igual en la zona de SQL compartido. Si es as,no la analiza y pasa directamente a ejecutar la que mantinene en memoria. De estamanera se premia la uniformidad en la programacin de las aplicaciones. La igualdadse entiende que es lexicografica, espacios en blanco y variables incluidas. El contenidode la zona de SQL compartido es:
Los pasos de procesamiento de cada peticin de anlisis de una sentencia SQL son:Si no, la sentencia es nueva, se analiza y los datos de anlisis se almacenan en la zonade SQL compartida.
Tambin se almacena en la zona de SQL compartido el cach del diccionario. Lainformacin sobre los objetos de la BD se encuentra almacenada en las tablas deldiccionario. Cuando esta informacin se necesita, se leen las tablas del diccionario y su
informacin se guarda en el cach del diccionario de la SGA.
Este cach tambin se administra mediante el algoritmo LRU. El tamao del cach estgestionado internamente por el servidor, pero es parte del shared pool, cuyo manaoviene determinado por el parmetro SHARED_POOL_SIZE.
-
7/25/2019 187888261 Monitoreo y Auditoria de La Base de Datos
21/21
Gracias por su atencin