SQL Server - Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

   
Vista:

Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

Publicado por Ismael Martinez ismaelhmg@hotmail.com (3 intervenciones) el 02/09/2015 16:49:19
Buenos dias amigos, necesito por favor que alguien me ayude a generar alguna sentencia o tarea programada o algun metodo para desloguear automaticamente a los usuarios en mi servidor SQL, manejo un ERP y a fin de optimizar el uso de usuarios concurrentes deseo desloguear a los usuarios que esten en el servidor pero que no esten realizando ninguna tarea.

Agradezco mucho todo su colaboracion.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

Publicado por Isaias (3186 intervenciones) el 02/09/2015 17:26:50
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
--*************************************************************
--* Elimina las conexiones que esten en SLEEPING y tengan mas *
--* de 24 horas sin actividad en su ultimo LAST_BATCH         *
--*-----------------------------------------------------------*
--* Ing. Isaias Islas G.                                      *
--*************************************************************
DECLARE @spid INT
DECLARE @SQLString NVARCHAR(50)
 
USE master
WHILE EXISTS(SELECT spid
			FROM master..sysprocesses
			WHERE status = 'sleeping' AND
			last_batch <= DATEADD(DD, -1, GETDATE())
			AND spid > 50 and spid <> @@spid)  -- Los spids del 1 al 50, son del sistema
	BEGIN
		SELECT TOP 1 @spid = spid FROM master..sysprocesses
			WHERE status = 'sleeping' AND
			last_batch <= DATEADD(DD, -1, GETDATE())
			AND spid > 50 and spid <> @@spid
		SET @SQLString = N'KILL ' + CONVERT(VARCHAR(10), @spid)
		EXECUTE sp_executesql @SQLString
		CONTINUE
	END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

Publicado por Ismael Martinez ismaelhmg@hotmail.com (3 intervenciones) el 02/09/2015 17:40:56
Si quisiera que fuera un tiempo maximo que 5 minutos por ejemplo, que parametro tendria que cambiar por favor Isaias?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias

Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

Publicado por Isaias (3186 intervenciones) el 02/09/2015 19:20:58
No te lo recomiendo, seria conveniente que este script lo pusieras en un job y se ejecutara UNA VEZ por noche.

Pero dice el dicho, "al cliente, lo que pida"

1
last_batch <= DATEADD(MI, -5, GETDATE())

Si una conexión, por "desgracia" se esta por mas de 5 minutos sin hacer algo, la "cortarías", aunque no fuera justificado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

Publicado por Ismael (3 intervenciones) el 02/09/2015 21:03:11
Mi muy estimado amigo muchas gracias por toda la ayuda y si, evidemente quiero cortar porque pasa q quiero ahorrar mis licencias de uso para el erp entonces si hay un usuario que se queda colgado por mas tiempo perjudicaria a otro usuario q realmente necesita el sistema. Espero estar en contato contigo, recibe un abrazo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias

Logout automatico para usuarios del sqlserver inactivos por mas de un tiempo x

Publicado por Isaias (3186 intervenciones) el 03/09/2015 17:20:08
Con gusto Ismael, saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar