Pentru ca m-am lovit des de probleme de incarcare ale serverului de sql, am facut o procedura ce returneaza query-urile ce utilizeaza cel mai mult procesorul. Poate fi folosita in procesul de optimizare a serverului de sql.
[mai mult...]Raport coloane cu tip si valori default
Pentru cazurile in care avem nevoie de un asemenea raport, am facut o procedura ce returneaza toate tabelele si view-urile de pe baza pe care este rulata si, pentru aceste obiecte, arata fiecare coloana, tipul culoanei, daca accepta sau nu valoarea null si daca are sau nu definit un default value pentru acea coloana.
[mai mult...]Execution per user
Pentru cazurile in care vrem sa stim ce anume executa un user pe server, am creat o procedura care primeste ca parametru un login si, pentru acel login, arata ce se executa in acel moment pe serverul de sql sau ultima executie a acelui login, dintr-o sesiune activa de pe server.
[mai mult...]Schimbare stare baza de date
Pentru ca am observat ca sunt multe persoane care nu stiu sa schimbe starea une baze de date decat din consola, prezint mai jos un script prin care o baza poate fi trecuta intr-una dintre starile SINGLE_USER, RESTRICTED_USER, READ_ONLY si apoi adusa in starea initiala.
[mai mult...]Adaugare zile lucratoare
Estimated Recovery Time
Backup la o singura tabela
Verificare linked servers
Pentru simplificarea administrarii serverelor de sql am facut o procedura care, rulata pe un server de sql, verifica toate LinkedServer-ele de pe acel server si le testeaza conexiunea\functionalitatea.
Ea poate fi pusa sa ruleze si intr-un job, si poate trimite alerte pe email , alerte care sa contina linkedserver-ele ce nu mai sunt functionale.
Verificare parole sql server
Pentru cazurile in care avem o asemenea cerinta de raport de la audit sau pur si simplu pentru simplificarea adiministrarii serverului de sql, am facut o procedura ce returneaza fiecare login de pe un server de sql pe care e rulata si, pentru fiecare, returneaza urmatoarele coloane:
ServerName – numele serverului
SQL_Login – numele login-ului
IsSysAdmin – daca este sau nu membru al rolului sysadmin de pe server
IsWeakPassword – daca are parola slaba , adica daca are doar litere sau daca este la fel ca login-ul, etc
WeakPassword – contine date doar daca coloana anterioara are valoarea 1, si in ea este explicatia pt valoarea 1
PwdLastUpdate – ultima oara cand a fost schimbata parola
DateAudited – data si ora rularii procedurii
Functia INSTR
Pentru ca am avut nevoie de multe ori de o functie in sql server, care sa fie similara functiei INSTR din Oracle, am construit o astfel de functie folosind functiile builtin ale SQL Server.
Functia care are urmatorii parametri:
– un parametru de tip text (poate sa fie si o coloana de tip text dintr-o tabela) : @str
– un al doilea parametru de tip text: @substr
– un parametru de tip intreg : @start
– un al doilea parametru de tip intreg : @position
Functia replica ceea ce face functia INSTR in Oracle, mai exact, cauta cel de-al doilea parametru (@substr) in primul parametru (@str),
de la pozitia @start si cauta ocurenta cu numarul @position.
Un exemplu pt edificare:
SELECT dbo.SqlServer_INSTR (‘Ana are mare’,’a’,4,2) intoarce pozitia 6, pentru ca functia cauta, incepand de la pozitia 4, a doua ocurenta a literei a.
[mai mult...]