miércoles, 8 de octubre de 2014

Crear una auditoria en SQL Server 2012

En el día de hoy les voy a explicar como crear una auditoria en SQL Server 2012; Este tipo de procedimiento es muy útil para realizar un seguimiento de las operaciones que se realizan en las bases de datos de SQL, o en el mismo servidor.
En este caso voy a crear una auditoria sobre un objeto de la base de datos.

En primer lugar se debe generar el plan de auditoria a nivel de servidor de la siguiente manera:

1. Se crea una nueva auditoria a nivel de servidor

2. Luego se configura de la siguiente manera



3. Luego de Configurar la auditoria, si quieren generar un filtro para la auditoria lo pueden hacer, por ahora al terminar damos ok.
La nueva auditoria creada se va a mostrar como "Des-habilitada" por consiguiente hay que "Habilitarla" como lo muestra la imagen, luego el icono de la auditoria cambia y solo queda la "Lupa" sin la cruz roja de abajo.

Cuando ya esté habilitada la auditoria debemos configurar el tipo de auditoria que queremos realizar, en este tutorial voy a auditar una tabla de una base de datos, para poder observar los Insert y Delete que realicen en la tabla.

1. Seleccionar la tabla que vamos a auditar, yo ya tengo una tabla creada para este caso, la  tabla se llama dbo.Student que esta contenida en la base de datos AdventureWorks2012.

2. A nivel de la Base de datos AdventureWorks2012 se debe crear las especificaciones de la auditoria, de la siguiente manera.



















El mismo proceso se utiliza para crear la auditoria de la acción DELETE.
al terminar de crear las acciones de auditoria presionamos en OK y queda creada a nivel de objeto de la base de datos.


Para terminar solo deben generar consultas que hagan INSERT o DELETE en la tabla que se esta auditando y consultar el log de auditoria para ver las acciones.



Como pueden ver en la imagen, en el registro aparecen las acciones DELETE e INSERT, si movemos los logs a la derecha podemos ver que usuario ejecuto dichas consultas.

Espero que les sirva de mucha ayuda, hasta la próxima!!






viernes, 5 de septiembre de 2014

Analizar resultados de el monitor de rendimiento de Windows


El "monitor de rendimiento" es una herramienta valiosa para determinar el funcionamiento óptimo de nuestro servidor y de nuestras bases de datos. En este día voy a compartir como realizar el análisis de los monitores de rendimiento que se configuran en Windows Server con una herramienta llamada "PAL" Performance Analysis of Logs.
En este caso tengo previamente configurado el monitor en un servidor de pruebas para extraer los archivos ".blg" que necesitamos; estos archivos son los que crea el propio monitor y con ellos vamos a generar el informe.

1. En primer lugar hay que tener el monitor configurado en el servidor o equipo, con todos los contadores que vamos a utilizar, en la imagen adjunta les muestro un contador configurado (En la siguiente publicación les motraré como configurar el monitor).




2.  Cuando ya tengan configurado el monitor hay que activarlo y esperar que que genere el archivo .blg que necesitamos, el archivo generalmente se guarda en "C:\PerfLogs\Admin\nombre_monitor"; el tiempo de espera depende de la programación de dicho monitor.

3. Ahora necesitamos descargar el "PAL" eso lo hacemos desde la siguiente pagina https://pal.codeplex.com/ , luego lo instalamos como cualquier aplicacion. (Para ejecutar el PAL se debe hacer con permisos de administrador)



4. Al tener instalado el "PAL" ya podemos trabajar con nuestros archivos .blg. como podemos ver en la siguiente imagen tengpo una serie de archivos .blg que se han generado durante un tiempo. en este caso solo voy a trabajar con los reportes del mes de septiembre.



5. En el siguiente vidéo esta el procedimiento completo para la generación del informe.




6. En el caso de tener SQL Server instalado en el servidor, aparecen otros contadores que podemos utilizar, por ejemplo, la cantidad de transacciones por segundo en las bases de datos. en este caso debemos la siguiente consulta en SQL:  



SELECT [object_name],

[counter_name],
[cntr_value]
FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE '%Manager%'
AND [counter_name] = 'Page life expectancy'

Esta consulta nos regresa un numero que debemos poner en el pal en la siguiente pestaña


Luego continuamos con el procedimiento normal.








miércoles, 3 de septiembre de 2014

¿Que es una Base de Datos?

Buen día, en mi primera entrada quisiera resumir sencillamente que es una base de datos.
Una base de datos se describe como un conjunto de datos (Teléfonos, direcciones, nombres, ciudades, países, etc) que se almacenan comúnmente en formato electrónico; esto permite ingresar, administrar, organizar y recuperar datos rápidamente.
Las Bases de Datos generalmente están organizadas por Filas ( Registros) y Columnas (Campos), estas filas y columnas están contenidas en Tablas que a  su vez están almacenadas en los archivos de las bases de datos.
El ejemplo mas común de una tabla en una base de datos es un archivo de Excel, el cual también se divide en filas y columnas. 















Las tablas en las bases de datos se describen como una colección de filas y columnas que se usan para organizar la información de un solo tema. Cada fila dentro de una tabla corresponde a un único registro y contiene varios atributos que describen la fila.