Pentru situatiile in care avem nevoie sa stim ce anume ocupa spatiul din baza de date , am creat o procedura ce returneaza dimensiunile tuturor tabelelor de pe baza de date pe care este rulata, atat in numar de linii cat si in spatiu utilizat pe disk, ordonarea facandu-se in mod descrescator dupa numarul de linii.
[mai mult...]Determinare data de inceput a unui trimestru din trecut
Memoria folosita de o baza pe un server sql
Top 10 scripturi cu cea mai mare durata de executie pe serverul sql
Pentru cazurile in care avem nevoie sa identificam scripturile sau procedurile a caror rulare dureaza mult, am facut o procedura ce intoarce top 10 scripturi sau proceduri in functie de durata medie a rularii lor.
Procedura returneaza urmatoarele coloane:
server_name – numele serverului pe care este rulata procedura
DatabaseName – numele bazei de care apartine obiectul aflat in top 10
object_name – numele obiectului (procedura sau script. Daca nu este o procedura aici va fi afisat “script”)
AverageDurationSeconds – durata medie a rularii
ObjectText – in aceasta coloana apare bucata de procedura sau de script care afecteaza cel mai mult durata rularii (este folositoare pentru optimizari)
[mai mult...]Gasire scripturi rulate des pe serverul de sql
Pentru cazurile in care avem nevoie sa stim care sunt procedurile rulate (folosite) cel mai des pe un server de sql am creat o procedura stocata ce aduce top 10 cele mai foslosite proceduri de pe serverul de sql , de la ultimul restart de server, si, pentru aceste proceduri din top 10 aduce urmatoarele coloane:
ServerName – numele serverului
DatabaseName – numele bazei de date pe care se ruleaza respectivul script din top 10
ObjectName – numele procedurii
ExecutionCount – de cate ori a fost rulata (indiferent daca a fost rulata cu succes sau a dat vreo eroare)
[mai mult...]Data ultimei schimbari a parolei pentru login in sql server
Pentru situatiile in care este necesar sa aflam cand un anumit login de sql server si-a schimbat parola ultima data, am facut o mica procedura ce foloseste functia Loginproperty. Aceasta procedura primeste ca parametru numele de login pentru care vrem sa aflam ultima data cand a fost schimbata parola si returneaza data respectiva.
In cazul in care login-ul respectiv nu exista , procedura va returna null.
[mai mult...]Creare folder de windows prin apelarea unei proceduri sql
In cazul in care avem nevoie ca, in timpul executiei unei proceduri stocate pe serverul de sql, sa cream un folder de windows, am facut o procedura ce primeste ca parametru o cale de folder de windows, iar procedura va crea in acea cale folderul dorit. Spre exemplu:
- procedura primeste ca parametru C:\Windows\Test\ si ea va crea folderul Test in calea existenta C:Windows.
- procedura primeste ca parametru C:\Test1\Test2\ si ea va crea in partiatia existanta C: folderul Test1 in care va crea subfolderul Test2.
Top 10 foldere in functie de dimensiune
Pentru situatia in care avem nevoie sa stim care sunt cele mai mari subfoldere dintr-un folder am creat o procedura ce primeste ca parametru o cale de folder de windows (spre ex C: sau C:\Windows, etc) si, pt acea cale, returneaza top 10 subfoldere cu cea mai mare dimensiune.
[mai mult...]Ultima rulare a unei proceduri stocate
Pentru cazurile in care avem nevoie sa stim cand anume a fost rulata ultima oara o anumita procedura am creat o procedura stocata. Aceasta primeste ca parametru numele procedurii cautate si returneaza ultima data cand a fost executata, dar si ultima data cand serverul de sql a fost restartat.
De ce este nevoie sa stim si cand a fost restartat ultima data serverul de sql? Pentru ca, in cazul in care de la ultimul restart de sql, procedura cautata nu a fost rulata niciodata, nu vom avea o data ultima de rulare pentru procedura cautata, si astfel, nu vom sti ca nu a fost rulata niciodata de la ultimul restart de sql server.
[mai mult...]Vizualizare permisiuni user pe toate bazele de date de pe un server
Am creat o procedura ce primeste ca parametru un nume de user si, pentru acel user, procedura returneaza permisiunile acelui user pe toate bazele de date de pe serverul sql pe care este rulata.
Procedura returneaza cate o linie pentru fiecare baza de date de pe server.
In cazul in care userul primit ca parametru nu are drept pe o baza, procedura returneaza o linie goala.
In cazul in care userul primit ca parametru are drept pe o baza, procedura returneaza:
Numele serverului
Numele bazei de date
Numele userului
Tipul lui (daca este user de sql sau user de windows)
Permisiunea
Tipul rolului prin care a primit acea permisiune
[mai mult...]