Eliminar todas las conexiones activas de una base de datos

CREATE PROCEDURE dbo.KillConexiones @dbName SYSNAME AS BEGIN SET NOCOUNT ON DECLARE @spid INT, @cnt INT, @sql VARCHAR(255) SELECT @spid = MIN(spid), @cnt = COUNT(*) FROM master..sysprocesses WHERE dbid = DB_ID(@dbname) AND spid != @@SPID PRINT...
Read More...

Traducción del Checklist de Mejores Prácticas para ser un DBA excepcional por Brad McGehee

Mejores Prácticas para ser un DBA excepcional SQL Server (redactado por el genial Brad McGehee ) 1. Ingresa a un SQL grupo de usuarios (chapters.sqlpass.org) ...
Read More...

Como obtener el último registro de una categoría dada usando la función RANK

Supongamos que queremos obtener el último producto vendido de cada categoría, la forma mas sencilla de realizar esto es utilizando la función RANK particionando por la categoría y ordenando por orden inverso por la fecha de venta, luego filtramos...
Read More...

Cannot open user default database. Login failed. SQL 2005

En linea de comandos ejecutar la utilidad sqlcmd: sqlcmd -E -d masterUna vez dentro de la línea de comandos de SQL Server ejecutar (reemplazar miLogin con el login que no está pudiendo acceder al servidor)alter login miLogin with default_database...
Read More...

Error 945 Database cannot be opened due to inaccessible files

SQL SERVER – FIX : Error 945 Database cannot be opened due to inaccessible files or insufficient memory or disk space. See the SQL Server error log for details Este es un error mas o menos común y los pasos de verificación son los siguientes: Paso...
Read More...

SQL Server 2008 Clustering en Windows Server 2008

SQL Server 2008 Clustering - Part 7 from Ramu Poonjolai on Vimeo. Hugo Román Bernachea Mail de contacto: SQLServer777@gmail.com Microsoft Certified DBAMicrosoft Certified Trainer http://www.linkedin.com/in/bernachea Twitter: @bernac...
Read More...

xType en syscolumns

A diferencia de 'xType" en sysobjects, no es tan facil de encontrar que significan esos valores en la tabla syscolumns, teniendo en cuenta que en los Books online mencionan al xtype como "for internal purpose" (para uso interno). La tabla...
Read More...

Abraham Silberschatz - Fundamentos de Bases de Datos

UNED Fundamentos de bases de datos Hugo Román Bernachea Mail de contacto: SQLServer777@gmail.com Microsoft Certified DBAMicrosoft Certified Trainer http://www.linkedin.com/in/bernachea Twitter:...
Read More...

SQL Injection Attacks

Un pequeño instructivo con algunas técnicas básicas de injection sql, interesante para empezar a entender estas técnicas de ataque a servidores de bases de datos:El libro se encuentra en: http://www.securitydocs.com/pdf/3348.PDF Hugo Román...
Read More...

Portqry - Monitor de estados de puertos TCP/IP

Portqry.exe es un utilitario que informa sobre el estado de un puerto TCP/IP.Este utilitario se puede descargar desde:Para línea de comandos:http://www.microsoft.com/downloads/details.aspx?FamilyID=89811747-C74B-4638-A2D5-AC828BDC6983&displaylang=en Interfaz...
Read More...

FAIL_VIRTUAL_RESERVE - Insuficiente memoria para ejecutar el query.

Este es un problema relativo al Virtual Address Space (VAS). Este mensaje FAIL_VIRTUAL_RESERVE 589824 significa (al menos lo que yo se) que estamos fallando en asignar espacio contiguo de alocacion de 589824 bytes aprox. Generalmente la solución...
Read More...

The Power of Cross Join

http://weblogs.sqlteam.com/jeffs/archive/2005/09/12/7755.aspx Hugo Román Bernachea Mail de contacto: SQLServer777@gmail.com Microsoft Certified DBAMicrosoft Certified Trainer http://www.linkedin.com/in/bernachea Twitter: @bernache...
Read More...

Cual es la diferencia entre CROSS APPLY y CROSS JOIN

Traducido de: http://weblogs.sqlteam.com/jeffs/archive/2007/10/18/sql-server-cross-apply.aspx Pienso que la manera mas fácil de pensar la sentencia CROSS APPLY es que es semejante a hacer un CROSS JOIN con un sub-select correlativo en vez de...
Read More...

Como encontrar un texto dentro de todos los stored procedures en SQL Server 2005

SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%foobar%' AND ROUTINE_TYPE='PROCEDURE' Nos valemos de la función ROUTINE_DEFINITION que nos devuelve la definición o codificación de...
Read More...

CXPACKET wait type en SQL Server

Problema Tenemos un servidor con mas de un CPU y experimentamos altos valores de CXPACKET wait types. Esto ocurre por las queries que se ejecutan en paralelo y el desafío es entender como las diferentes versiones de un query pueden impactar...
Read More...

Artículos de Kimball - Datawarehouse

Un seria ultra-interesante de artículos de Kimball, el gurú del Datawarehouse: http://www.rkimball.com/html/articles.html http://www.decisionone.co.uk/resources/KimballArticles.htm Hugo Román Bernachea Mail de contacto: SQLServer777@gmail.com...
Read More...

sp_who2 - Quien, cuando, como?

En este link podemos ver una profunda explicación sobre la historia del sp_who2, desde su origen como sp no documentado hasta el dia de hoy. En esta profunda nota se pueden ver una clara explicación y un interesante script que se puede agregar...
Read More...

Información acerca de los reportes scheduleados

Muchas veces tenemos una gran cantidad de reportes programados similares, pero necesitamos obtener info detallada de los mismos.El siguiente script---> http://www.sqlexperto.com.ar/index.php?topic=21.0 nos da la forma de obtener la lista...
Read More...