[ sallle @ 30.06.2008. 16:47 ] @
| 1.
jel ima neka sp da proverim sa kog ip-a sam trenutno konektovan. - konkretno unutar triggera bih prilikom zapisa da uhvatim i ip sa kog dolazi konekcija
2. kako da proverim koje su databases in use . - pre drop-ovanja da izvrsim proveru
3. kako za diskonektujem konekcije (koje mi prave problem u tacki 2)
za sve tri tacke mi treba t-sql (posto iz win aplikacije radim)
hvala |
[ Koce @ 01.07.2008. 08:20 ] @
1. Nesto od toga (host...) mozes da nadjes preko sp_who i so_who2, mislim da nisu dokumentovane, pa se malo poigraj sa tim
2)
za 2 uradis nesto ovako:
SELECT distinct db_name(dbid) FROM master..sysprocesses
3)
DECLARE @spid varchar(6)
DECLARE spid_cursor CURSOR
FOR SELECT cast(spid as varchar(6)) FROM master..sysprocesses WHERE dbid=db_id(@DATABASE_TARGET)
OPEN spid_cursor
FETCH NEXT FROM spid_cursor INTO @spid
WHILE (@@fetch_status = 0)
BEGIN
exec ('kill ' + @spid)
FETCH NEXT FROM spid_cursor INTO @spid
END
CLOSE spid_cursor
DEALLOCATE spid_cursor
PRINT 'Uradio kill processes'
;)
[ sallle @ 02.07.2008. 09:02 ] @
thx a lot :)
[ sallle @ 09.07.2008. 10:41 ] @
elem...
prilikom dropovanja, restorovanja i slicno, treba svi useri (konekcije) da budu diskonektovani.
Taj diskonekt bi trebalo da bude u istoj transakciji sa dropom (alterom i sl) - da se ne bi desilo da se neko u trenutku kad smo diskonektovali sve usere , a neposredno pre dropovanja nakaci na bazu.
problem je sto drop, alter i sl ne mogu da se ubace u multi-statement transakciju.
Tak da je moje resenje sledece:
-nakaciti se na master bazu
-ALTER TABLE imeBaze SET OFFLINE WITH ROLLBACK IMMEDIATE -- ovo diskonektuje sve
- DROP , RESTORE, ALTER i slicno
-ALTER TABLE imeBaze SET ONLINE
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.