You are on page 1of 5
P.LLC.C.J. ~ Servciul de tehnologia informatie! RASPUNSURI PROBA SCRISA a examenului pentru ocuparea postului de specialist IT (aplicafii software) 1. Enumerati modelele de recuperare din SQL Server (SQL Server Recovery models) si descrieti caracteristicile lor (2,5 puncte) Modelul de recuperare SQL Server (SQL Server Recovery model) reprezinta 0 proprietate a bazei de date care controleaza modul in care sunt jurnalizate tranzactile in fisierul de log, daca fisierul de log poate fi salvat si ce fel de operatii de restaurare sunt disponibile pentru baza de date. Cea mai importanta diferenta dintre modelele de recuperare este reprezentat de datele care sunt scrise in fisierul de log si de comportamentul acestui fisier. Fisierul transaction log este folosit pentru a garanta ca fiecare tranzactie este atomica. In caz de cadere a sistemului, fisirul transaction log este folosit de SQL ‘Server ca sa faca roll back la transactille care nu erau inchelate si sa salveze toate tranzactiile incheiate. SQL Server are trei tipuri de modele de recuperare: simple, bulk-logged si full. Modelul de recuperare SIMPLE : este potrivit pentru pentru bazele de date care cer ca fiecare tranzactie sa fie atomica dar nu neaparat si durabila. In acest model de recuperare fisierul transaction log este trunchiat (golit) la checkpoint. Fisierul de log va pastra tranzactia pana ce aceasta va fi scrisa in fisierul de date, dupa care spatiul va fi folosit pentru alta tranzactie Avantajul acestui model este ca se pastreaza un jumal de tranzactii mic; dezavantajul ar fi ca la restaurarea bazei de date se pierd tranzactiile de la uttimul backup full sau differential. In functie de strategia de backup aleasa , se restaureaza ultimul backup full si toate arhivele de log de dupa acest backup sau ultimul backup full, ultimul backup differential si toate arhivele de log de dupa ultimul backup differential Informatia scrisa in fisierul transaction log pentru operatiile bulk-copy este minima ceea ce duce la o performanta ridicata Acest model este recomandat pentru baze de test sau de dezvoltare sau care au cele mai multe date read-only. Modelul de recuperare BULK-LOGGED: sunt scrise informatii minime despre operatile bulk-copy in fisierul de log. Celelalte tranzactii sunt scrise in intregime in fisierul de log. Nu este permisa recuperarea la un anumit moment din trecut. Se poate restaura ultimul backup full si ultimul backup differential, daca exista, sau ultimul backup full si ultima arhiva a fisierului transaction-log daca nu au fost facute operatii de bulk-copy. Informatia scrisa in fisierul transaction log pentru operatille bulk-copy este minima ceea ce duce la o performanta ridicata. Acest model de recuperare este indicat sa fie utilizat doar atunci cand se fac importuri masive de date. Cele mai bune practici pentru bazele de date de P.I.C.C.J. ~ Servciul de tehnologia Informatiel productie recomanda modelul de recuperare full si salvarea fisierului de log inainte de a face operatii de bulk precum INSERT INTO sau BULK INSERT, se modifica apoi modelul de recuperare in BULK-LOGGED, se fac operatiile de bulk, si apoi se revine la modelul de recuperare full si se face salvarea fisierului de log. Modelul de recuperare FULL: Toate tranzactille sunt scrise in fisierul transaction log si sunt pastrate pana ce acest fisier este salvat. Fisierul de log, depinzand de activitatile care au loc pe baza de date, poate ajunge sa fie foarte mare. El poate fi controlat printr-o salvarea periodica. Baza de date poate fi restaurata la un anumit moment din trecut. Deoarece se scriu toate modificarile facute in baza de date in fisierul transaction log performanta este mai scazuta decat la celelalte modele. Modelul este recomandat pentru bazele de date de productie pentru care nu se accepta pierderea unor date de la ultimul backup full sau differential. 2. Modurile de autentificare in SQL Server (2 puncte) Cand SQL Server a fost instalat una din decizille care a fost luata a fost cea de a alege modul de autentificare. Sunt doua moduri in SQL Server: modul de autentificare Windows — doar autentificare Windows si modul mixed — autentificare Windows si SQL Server Aceasta optiune poate fi modificata dupa instalare in Management Studio, in pagina Security din fereastra Server Properties sau din RegEdit. In modul de autentificare Windows, utiizatori nu trebuie sa mai invete alta parola. Ca sa foloseasca acest mod de autentificare utilzatorii trebuie sa aiba intai cont in Windows. in SQL Server pot fi autentificati si utiizatori care sunt intr- un grup Windows. Cand unui grup Windows i se permite accesul la un server SQL prin crearea unui cont de login orice membru al grupului Windows se poate conecta la serverul SQL. Rolurile, permisiunile pot fi acordate grupului si se aplica automat tuturor membrilor din grup. SQI Server stie si numele de utlizator. Informatiile de audit pot fi adunate la nivel de grup si de utilizator din grup. Modul mixed — autentificare Windows si SQL Server Conturile login SQL Server sunt folositoare cand autentificarea Windows nu este potrivita. Acest mod de conectare la server este mentinut pentru compatibilitate cu versiunile anterioare si pentru aplicatii care sunt hard-coded pentru un cont login SQL Server. Implementarea modului de autentificare Mixed Mode va crea contul sa care este un membru al rolului sysadmin , cu toate drepturile pe server. Cea mai buna practica este de a dezactiva contul sa si de a acorda rolul sysadmin altor conturi sau roluri, Daca nu se dezactiveaza contul sa, este indicat sa se modifice parola cu una complexa pentru acest cont. De asemeni se recomanda ‘stergerea contului BUILTINS\Administrators. P.1.C.C.J. ~ Servciul de tehnologia informatiei 3. Definiti notiunea de functie. Tipuri de functii in Transact-SQL (1,5 puncte) Functia este reprezentata de o secventa de instructiuni, folosite pentru a incapsula cod ce va fi refolosit. O functie are unul sau mai multi parametrii si intoarce o valoare scalara sau un tabel. Functile nu au parametri de iesire. Tipurile de functi in serverul SQL inctil scalare, functi inline table-valued, functii mutti-statement valued, functi sistem. Functile scalare retureaza o singura valoare cu tipul de data definit in clauza RETURN. Corpul functiei definit in blocul BEGIN ... END contine instructiuni Transact-SQL care intorc valoare. O singura instructiune RETURN se afla impachetata in corpul funeti © functie inline table-valued returneaza un tabel care este rezuttatul unei singure instructiuni SELECT. Este similiara unei vederi, dar este mai flexibila, deoarece pot fi transmisi paramettii functiei. Functile multi-statement valued retumieaza un tabel construit prin una sau mai multe instructiuni si este similara unei proceduri stocate. Sunt folosite pentru acelasi moti ca si functill inline table-valued_atunci cand logica este prea complexa pentru a fi rezolvata cu un singur SELECT. Functiile system sunt functii build-in furnizate de serverul SQL pentru a ne ajuta sa efectuam o serie de operatil. Aceste functii nu pot fi modificate. Aceste functil pot fi folosite in interogari pentru a returna date sau a face operatii cu date.Cele mai multe functi sistem sunt functii scalare si realizeaza operatiile obisnule pe care le realizeaza functile si in alte limbaje de nivel inalt , cum sunt operatii_ pe tipuri de date(date de tipul siruri si date de tipul data si timp) si conversia intre tipurile de date. Este furnizata 0 biblioteca de functii matematice si criptografice. Alte functii fumizeaza detalii despre configurarea sistemului si despre securitate. Funetiile de agregare : MIN, MAX, AVG, SUM si COUNT fac calcule asupra unui grup de randur. 4. Enumerati si descrioti instructiunile Transact-SQL folosite in lucrul cu proceduri stocate (crearea, modificarea, executarea si stergerea procedurilor stocate). (1 punct) procedura stocata este creata cu instructiunea CREATE PROCEDURE. Aceasta instructiune trebuie sa fie singura intr-un batch. Toate instructiunile dintre cuvantul cheie AS si sfarsitul scriptului sau pana la sfarsitului batch-ului vor face parte din corpul proceduri. Proceduri sunt create in baza de date curenta, cu exceptia procedurilor temporare (numele lor este prefixat de #). Aceaste proceduri sunt create in baza de date tempab si sunt sterse dupa prima restartare a serverului. Chiar daca nu este obligatorie delimitarea corpului procedurii de cuvintele cheie begin si end este recomanda folosirea lor pentru a face codul mai lizibil.

You might also like