Leer, buscar y filtrar el contenido del log de errores

Algunas veces se hace complicado encontrar lo que buscamos en el Log de SQL Server, debido a los muchos registros de información que se llevan a cabo por parte del sistema (auditorias de seguridad, ejecución de respaldos, etc)

--SIN FILTROS
EXEC xp_readerrorlog

Ejecutar la instruccion sin ningun filtro nos va a generar la misma cantidad de informacion tan abrumadora de la interfaz grafica. Dichosamente el procedimiento tiene parametros para filtrar la informacion:

  • Parametro #1 –
    • Se usa para identificar el archivo a consultar.
    • MSSQL guarda una cantidad configurable de archivos de registro de eventos, y se crea uno nuevo con cada registro Sin no se envia ningun valor en este parametro siempre se revisara el actual cuyo valor es de 0
  • Parametro #2 –
    • Es un filtro para incluir eventos del motor o del Agente
      • 1 = SQL Server error log (default)
      • 2 = SQL Agent log
  • Parametro #3 –
    • Es un filtro de busqueda del tipo NChar
  • Parametro #4 –
    • Es un filtro adicional de busqueda del tipo NChar
  • Parametro #5 –
    • Es un filtro de busqueda por fecha, en el que se incluyen los errores anteriores a la fecha definida
  • Parametro #6 –
    • Es un filtro de busqueda por fecha, en el que se incluyen los errores posteriores a la fecha definida
  • Parametro #7 –
    • Es un parametro para definir el ordenamiento de la informacion
      • – N’ASC’
      • – N’DESC’
--Con Filtros
EXEC xp_readerrorlog 0, 1, NULL, NULL, NULL, NULL, N'ASC'

La imagen que esta justo debajo de este texto es un ejemplo de la instancia que tengo instalada en mi maquina personal, y se muestran miles de miles de filas de informacion en una maquina de escritorio; que puede depararnos un server productivo con cientos, miles o millones de transacciones diarias.

SQL Server Error Log

Ref:

https://blogs.msdn.microsoft.com/askjay/2010/09/19/the-parameters-of-xp_readerrorlog/

Tagged with: , , ,
Publicado en MSSQL Administration, MSSQL Development, Troubleshoot, Utilitarios

SQL Server en Linux

La ultima noticia y lo que parece ser la bomba de la semana y el año en el mundo de las bases de datos. MSSQL Server va a tener una versión que correrá en Linux. Para que versiones no se sabe, que funcionalidades van a estar disponibles, licenciamiento, todavía todo es un misterio, pero creo que si es buena noticia!

A la expectativa; acá el texto del anuncio en Ingles:

MSSQL Love Linux

 

Publicado en MSSQL Administration

Encontrar las dependencias en mi base de datos

Escribe esta consulta temprano para buscar las dependencias de un procedimiento que estaba modificando, pude haber utilizado el sp_depends para que me liste todas las dependencias pero no me hubiese listado los totales que es lo que realmente estaba buscando.

SELECT DISTINCT
OBJECT_NAME(o.object_id) ,
v.name ,
COUNT(1)
FROM
sys.objects o
INNER JOIN master.dbo.spt_values v ON o.type = SUBSTRING(v.name, 1, 2) COLLATE catalog_default
AND v.type = 'O9T'
INNER JOIN sys.sql_dependencies d ON o.object_id = d.object_id
INNER JOIN sys.schemas s ON o.schema_id = s.schema_id
WHERE
o.object_id = OBJECT_ID('<MIPROCEDIMIENTO>')
AND d.class < 2
GROUP BY
OBJECT_NAME(o.object_id) ,
v.name
ORDER BY
3 DESC;
GO


sp_depends '<MIPROCEDIMIENTO>';</pre>
<pre>
Tagged with: , , , ,
Publicado en MSSQL Development, Utilitarios

sp_executesql vrs sp_sqlexec

Estos procedimientos son utilizados comúnmente para ejecutar codigo Transact de manera dinamica; es codigo que armamos a partir de hileras para producir un producto que de otra forma seria un poco complicado.

sp_sqlexec esta en desuso, es un procedimiento que MSSQL ya no soporta y por tanto se deberia de reescribir cualquier codigo que lo este utilizando en este momento.

Cuando ejecutamos codigo dinamico podemos usar sp_executesql o bien exec. Con la diferencia de que el sp_executesql probablemente creara un plan de ejecucion que se pueda reutilizar para ejecuciones posteriores.

Sintaxis


USE master
GO

DECLARE @vsql NVARCHAR(max)

SET @vsql = 'select top 210 * from sys.tables'

EXEC(@vsql)

EXEC sys.sp_sqlexec @vsql

EXEC sys.sp_executesql @vsql

Tagged with: , , ,
Publicado en MSSQL Development, Utilitarios

Data Files – Espacio Reservado y libre

De ahora en adelante quiero compartir un poco mas frecuentemente lo que uso a diario o lo que aprendo de una u otra forma. Ciertamente he estado un poco acalambrado y ocupado por muchos cambios que se avecinaron en los últimos meses.

Espero que esta consulta para listar los archivos de una base de datos, su espacio reservado y el espacio libre para en ambos en MB, por data file les sea de utilidad

SELECT a.fileid,
       CONVERT(DECIMAL(12, 2), Round(a .size / 128.000, 2)) AS [FILESIZEINMB],
       CONVERT(DECIMAL(12, 2), Round(Fileproperty (a. NAME, 'SpaceUsed') / 128.000, 2)) AS [SPACEUSEDINMB],
       CONVERT(DECIMAL (12, 2), Round ((a. SIZE - Fileproperty (a. NAME, 'SpaceUsed')) / 128.000, 2)) AS [FREESPACEINMB],
       a.NAME AS [DATABASENAME],
       a.filename AS [FILENAME],
       b .NAME
FROM sys. sysfiles a
LEFT OUTER JOIN sys. filegroups b ON a.groupid = b. data_space_id


Publicado en MSSQL Administration

Como exportar los diagramas de bases de datos de MSSQL

Esta semana estuvimos trabajando en presentaciones en el trabajo y estuve buscando una manera rápida de exportar los diagramas de base datos a una aplicación donde pudiese modificarlos de una mejor manera; lo aprendido en dos simples lineas.

1. Si se piensa o se necesita mover estos diagramas a otra base de datos, lo mejor es crearlos en una herramienta como el MS Visio que te permite crear diagramas entidad relación o relacionales y de ahí exportarlos a SQL.

2. Si ya se crearon los diagramas, no existe una manera simple de exportarlos a ninguna herramienta después del Visio 2010, el Visio 2013 a mi entender es menos robusto en estas funcionalidades. No queda mas que copiar el diagrama, para hacer esto simplemente se tiene que editar el diagrama, ya cuando estamos en modo de edición simplemente vamos al menú Diagrama de Bases de datos [Database Diagram] y elegimos la opción Copiar el diagrama al porta papeles [Copy Diagram to Clipboard]; esto nos genera una imagen a partir del diagrama no es editable pero sirve para presentaciones.

Espero sea útil.

Tagged with: , , , , ,
Publicado en Utilitarios

This is Microsoft’s surprising ‘Plan B’ for mobile

Featured Image -- 225

Cambio de estrategia!

Quartz

Microsoft’s mobile comeback—at least how the company had intended—isn’t happening.

Despite Microsoft’s early presence in the smartphone industry—years ahead of Apple and Google—and recent critical acclaim for the software, Windows Phone is a flop. In the second quarter, Microsoft’s global smartphone market share was just 2.5%, according to IDC. That represented a decline from the previous year in both share and actual shipments, despite a growing smartphone market. It truly is a two-horse race, with Google and Apple representing a combined 96.4% of shipments last quarter.

A zoomed-out view of the smartphone industry shows just how completely Microsoft has missed the smartphone revolution.

Microsoft smartphone sales chart

But Microsoft, under new CEO Satya Nadella, still aspires to be a major player in the mobile industry. And this is where its stunted market share of smartphone software platforms really hurts. Not only is it missing out on potential hardware revenue, but it’s also losing a distribution channel for its own software and services…

Ver la entrada original 453 palabras más

Publicado en MSSQL Administration
Busca por: