You are on page 1of 79

Cum instalam SQL Server

2005 Express Edition !!


Prezentare generala
Prezentare generala SQL Server
2005
 Variante de SQL Server 2005 :

• Enterprise Edition ( fara limitare la procesoare


si memorie )
• Developer Edition ( varianta pt. dezvoltat aplicatii )
• Standard Edition ( 4 procesoare si fara limita la
memorie )
• Workgroup Edition ( recomandat companiilor
mici spre medii )
• Express Edition ( Varianta gratuita )
• Mobile Edition ( pt. dezvoltare de aplicatii pt.
echipamente mobile ca PDA,
telefoane inteligente
De ce SQL Server ???

 Motor stocare date si procesor pt. interogari


 Furnizeaza metode de stocare date Accumark in
baze de date SQL
 Distribuit gratis de Microsoft, si ca atare este o
solutie ieftina pt. servere de date .
 Ruleaza practic pe orice sistem de operare
 Se poate integra usor in aplicatii .
 Ruleaza in background
 Nu are interfata user proprie si actioneaza ca un
serviciu pt. sistemul de operare .
Pregatire instalare
 Cerinte minime sistem:

• CPU minim 600MHz , iar recomandat peste 1 GHz; Express


este varianta monoprocesor.
• Memorie sistem recomandata 512 MB sau mai mult,
( oricum SQL nu consuma mai mult de 1 GB ).
• Spatiu disk necesar pt. instalare 500 MB iar in total
aproximativ 2.5 GB se pot considera suficienti ( dimensiunea
maxima a bazei de date este de 4 GB, care poate fi
considerata o limitare.

 Verificare sistem de operare existent

• Windows 2000, SP 4 sau ulterior


• Windows Server 2003 , SP1 sau ulterior
• Windows Small Bussines Server 2003
• Windows XP Professional , SP2 sau ulterior
• Windows Home Edition
Pregatire instalare ( continuare )

 Obligatoriu cine face instalarea va avea drepturi


de administrator pe calculatorul respectiv.
 Se dezinstaleaza orice versiune beta a SQL
Server 2005 sau SQL Native Client existenta pe
calculator, utilizind Contol Panel / Add-Remove
Programs.
 Se face un back-up al datelor din calculatorul pe
care se face instalarea.
 Se face defragmentarea HDD-ului pe care se
instaleaza programul.
Pregatire instalare ( continuare)
 Se dezinstaleaza versiunea 1.2 de Microsoft .NET
Framework daca exista .
 Se verifica daca este instalata versiunea 2.0 a Microsoft
.NET Framework si in cazul ca nu exista se instaleaza .
 Daca exista alte versiuni superioare de .NET Framework
( 3.0 sau 3.5 ) atunci nu mai este necesara instalarea lui
2.0.
 Din experienta recomand folosirea kit-ului dotnetfx35.exe
care contine toate versiunile de mai sus impreuna cu
service pack-urile corespunzatoare si care nu au dat erori la
instalare .
 Tot acum se poate instala si Microsoft Core XML Services,
(MSXML 6.0 ) ; in kitul de instalare apare sub numele de
msxml6_sdk.msi .
Instalarea SQL Server 2005
Express
 Se face in 2 pasi :

• Se instaleaza nucleul serverului ( sqlexpr.exe )

• Se instaleaza GUI pt. SQL Server Management


Studio Express ( SQLServer2005_SSMSEE.msi )

Nota : toate referirile scrise cu rosu se gasesc in kitul


de instalare pe care l-am alcatuit .
Creare zone de lucru pe serverul
SQL
 La terminarea instalarii se verifica conectivitatea
la baza de date.
 Se face configurarea pt. accesul altor calculatoare
la serverul SQL
 Se trece apoi la crearea zonelor de lucru dorite in
Accumark, pe fiecare statie .

Observatie : SQL 2005 Express se va instala pe fiecare


statie ce se doreste a avea acces la un server si nu se
recomanda combinarea diferitelor variante de aplicatii pt.
baze de date ( MSDE, sau SQL 2000 cu SQL 2005).
Configurarea SQL 2005 se va face doar pe PC-ul ales ca
server.
Cum se definesc zonele de lucru de tip SQL

 In Accumark –ul de pe orice statie ce urmeaza sa


se conecteze la server se apeleaza functia
Accumark Utilities, Configuration si SQL Support
Cum se definesc zonele de lucru de tip SQL
( continuare )
 In fereastra deschisa se vor completa in cimpul SQL Server Name
numele calculatorului si eventual instanta, apoi se apasa butonul Test
Cum se definesc zonele de lucru de tip SQL
( continuare )
 Daca operatia de conectare la server a reusit se intra in Accumark
Explorer unde in afara de zonele de lucru clasice de pe discurile
locale si care au litere inainte va apare si un dispozitiv de stocare
vizualizat printr-o cifra de la 0 la 9 ( ex. 1:,2: ).
 Se selecteaza simbolul cu cifra inainte si din tabul File se selecteaza
New si apoi Storage Area..
Proba practica !!!!

Vom face o instalare de la A la Z de


SQL 2005 Express Edition precum si
configurarea acestuia pt. a putea fi
accesat de la distanta.
Vom face apoi si configurarea
programului Accumark pt. a accesa
zone de lucru situate pe acest server.
Configurare SQL Server ( detalii )
 Procesul de configurare va cuprinde urmatoarele etape :
- crearea userilor ce vor avea acces la baza de date
- crearea grupurilor de useri ce pot accesa baza de date
- instalarea unei instante noi cu nume intr-o alta zona
decit cea implicita ,
- verificarea functionalitatii noii instante
- configurarea pt. lucrul in retea
- adaugarea userilor si grupurilor create in prima faza,
- verificarea conectivitatii la serverul SQL a statiilor user
- crearea de zone de lucru folosind uneltele din AccumarK,
Accumark Utilities si Accumark Explorer.
Crearea de utilizatori ( useri )
 Crearea acestor user se face folosind functiile
corespunzatoare din Windows:
- click dreapta pe icoana My Computer si apoi Manage
Crearea de utilizatori ( useri )
( continuare )

 In fereastra deschisa se selecteaza Users :


Crearea de utilizatori ( useri )
( continuare )

 Apoi in partea dreapta right-click si se selecteaza


New User :
Crearea de utilizatori ( useri )
( continuare )

 Se complecteaza cimpurile din fereastra deschisa pt. toti


userii ce se doresc a fi introdusi .
 Pasul urmator consta in gruparea acestor useri in grupuri ce
vor avea drepturi diferite de acces la baza de date .
Crearea de utilizatori ( useri )
( continuare )
Crearea de utilizatori ( useri )
( continuare )

 Se complecteaza cimpurile din fereastra


deschisa pt. toate grupurile ce se doresc
create .
 Aceste grupuri vor fi apoi atasate la
instanta ce va fi creata in pasul urmator .
Instalare instanta noua
 Vom instala o noua instanta a SQL
Server cu numele Gerber.
 Vom modifica locatia de stocare a
bazei de date, de exemplu pe discul
D: unde vom crea un folder cu
numele SQLData .
 Pasii de instalare sunt cei pe care i-
am prezentat anterior .
Verificarea functionalitatii noii instante
 Verificarea instalarii corecte cuprinde :
- verificarea startarii serviciilor aferente
serverului ( SQL-Server si SQL-Server-Browser )
Verificarea functionalitatii noii instante
( continuare )
 Dupa verficarea startarii serviciilor sa verificam si prezenta
proceselor cu ajutorul Task Manager-ului.
Verificarea functionalitatii noii instante
( continuare )
 Verificarea cu ajutorul SQL Server Configuration
Manager, precum si configurarea pt. lucrul in
retea( activarea protocoalelor TCP/IP si Named
pipes )
 Deoarece vom folosi o instanta cu nume se va
asigna un port fix pt. aceasta.
Verificarea functionalitatii noii instante
( continuare )
 Se va verifica functionalitatea utilizind si SQL
Server Management Studio .
 Daca verificarile de functionalitate sunt bune vom
crea useri si grupuri in cadrul serverului .
Verificarea functionalitatii noii instante
( continuare )
Citeva observatii !!!
 In slide-ul anterior prin expandarea arborelui
Databases/System Databases apar 4 baze cu numele :
master, model, msdb, tempdb care au urmatoarele functii :
- master este inima serverului SQL; aici isi tine toata
informatia legata de server, bazele de date, useri, obiecte
system, securitate, setarile de configurare, etc. Este foarte
important ca aceasta baza de date sa fie consistenta si
functionabila, altfel serverul devine instabil .
- model este o baza de date sablon care este folosita
pt. crearea bazelor utilizator adica noua baza generata este
baza model cu un alt nume. Acest lucru este util daca se
doreste realizarea unei automatizari a procesului de
generare a bazelor de date adica setarile de securitate si
drepturi se pot defini pe baza model dupa care vor fi
replicate de fiecare data cind o baza noua este creata .
- msdb este o baza utilizata de SQL-Agent si tine
informatia despre taskurile planificate, operatori, etc.
-tempdb este o baza temporara unde serverul isi tine
anumite informatii de uz untern si care este stearsa de
fiecare data cind porneste SQL-ul . Aici nu este tinuta nici o
informatie despre useri.
Modalitati de autentificare
Autentificare Windows

Nume user si Parola Windows

USER SQL-Server
Autentificare SQL

Nume user si Parola


Administrarea conturilor de user in Server
Management Studio Express
Administrarea conturilor de user in Server
Management Studio Express
 Vom folosi cele 3 grupri create care vor avea
urmatoarele drepturi :
- Grupul Service_group poate crea, sterge,
scrie si citi baze de date.
- Grupul Accumark_group doar acces in
citire si scriere fara drepturi de creere
- Grupul Training_group cu drepturi ca cel
anterior.
Nota: in urmatoarele slide-uri se vor prezenta modalitatile de
adaugare useri ( grupuri ) deja creati in Windows ,
precum si augarea de noi useri creati cu mecanismele
SQL.
Administrarea conturilor de useri
( continuare )
 Se deschide SQL Server Management Studio
 Se deschide serverul/instanta dorita
 Se deschide optiunea Security
 Se face click pe Login si in panoul din dreapta se da click
dreapta si apoi se selecteaza New Login
Administrarea conturilor de useri
( continuare )
Administrarea conturilor de useri
( continuare )
Administrarea conturilor de useri
( continuare )

- Server roles reprezinta un grup special definit in SQL care contine


utilizatori cu functiuni speciale in administrarea serverului ( back-up,
administrare securitate, administrare server, etc ).
Administrarea conturilor de useri
( continuare )
Administrarea conturilor de user cu
autentificare SQL
Administrarea conturilor de user cu
autentificare SQL
 ATENTIE !!!
- daca un user (un grup ) este membru al unui rol
system-administrator in SQL, el nu este obligatoriu
administrator si in Windows-system; el poate doar sa
se ocupe de serverul SQL si de bazele sale de date.

Administrator Windows si Administrator SQL


sunt povesti diferite !!!

- pt. a folosi in SQL un user care nu este administrator


in calculatorul lui si se autentifica sub Windows va
trebui sa fie introdus in grupul Administrators din PC-
ul pe care este instalat serverul.
Verificarea conectivitatii la serverul SQL
2005 Express
 Verificarea conectivitatii consta in etapele :
- verificarea conexiunii la retea cu comanda: ping adresa IP
- verificarea resolutiei numelui serverului cu comanda: ping
nume server
- utilizarea aplicatiilor portqryui.exe si osql.exe cu ajutorul carora
se verifica corectitudinea setarilor de firewall si a autentificarii
userilor.
- daca pasii anteriori au reusit se poate trece la realizarea
conexiunii cu Accumark Utilities.
Verificarea conexiunii la server prin adrese IP

 Pe o fiecare statie din retea ce se doreste a fi conectata la server se


deschide o fereastra Command Prompt si se scrie instructiunea :

Adresa IP introdusa tb. sa fie IP-ul serverului din reteaua respectiva.


Daca conexiunea este valida atunci asa ar tb. sa apara raspunsul.
Verificarea conexiunii la server prin adrese IP

 ATENTIE !!! :
Nu veti primi reply de la masina SQL daca
urmatoarele conditii exista :

- gazda ( host) si in acest caz este masina SQL


are un firewall activat si configurat sa nu
raspunda la solicitarile ping ( pachete ICMP )
chiar daca sunt primite .
- unele switch-uri din retea pot sa opreasca si ele
pachetele ICMP,
- in cazul ca nu sunteti siguri de aceste aspecte
chemati administratorul de retea !
Verificarea conexiunii la server prin hostname

 fiecare calculator dintr-o retea are un nume si o


adresa IP.
 fiecare calculator trebuie sa poate fi accesat si
prin IP si prin nume ( hostname ).
 Dupa verificarea conectivitatii cu ajutorul adresei
IP se face verificarea cu ajutorul numelui ( vezi
exemplul de mai jos ):
Verificarea conexiunii la server prin hostname
(continuare)
In cazul ca nu s-a obtinut un rezultat corect
atunci se incearca o rezolvare prin modificarea
fisierului local HOSTS
Nota: pt. a face aceasta operatie tb. sa fiti
logati ca administrator pt. ca fisierul hosts
este protejat la scriere si nu poate fi accesat
in mod normal . In orice situatie inainte
chemati responsabilul cu reteaua .
- Hosts are urmatoarea locatie :

C:\Windows\System32\drivers \etc\hosts

iar modificarea va arata ca in slide-ul urmator :


Verificarea conexiunii la server prin hostname
(continuare)
Verificarea conexiunii la server prin hostname

 daca directorul in care este instalat Windows-ul


este altul modificati corespunzator calea catre
fisierul hosts.
 atentie ca tot in acelasi loc exista si fisierul
hosts.sam care este altceva,
 Folsiti NotePad-ul pt. editare ,salvati si apoi
testati iar cu comenzile ping; ar trebui sa
functioneze .
 daca totusi nu vrea nu mai este o problema de
Accumark si chemati administratorul retelei sa o
rezolve .
Verificarea setarilor din firewall
( utilizarea aplicatiei portqryui.exe )
 Pt. a verifica ca portul alocat SQL in firewall-ul de pe server este
deschis si asculta reteaua se poate folosi utilitarul portqryui.exe ce
se instaleaza pe unul din calculatoare.
Verificarea setarilor din firewall-continuare
( utilizarea aplicatiei portqryui.exe )
Verificarea setarilor din firewall
( utilizarea aplicatiei portqryui.exe )

 se complecteaza cimpurile din fereastra ce se


deschide la lansarea aplicatiei ca in exemplul de mai
sus ( adresa IP a serverului, numarul portului si
protocolul ) apoi se apasa butonul Query
 raspunsul programului apare in fereastra inferioara
si in functie de acesta se poate deduce daca
porturile sunt deschise sau nu ( vezi chenarul rosu ).
 de asemenea programul furnizeaza si alte informatii
utile cum ar fi daca rezolvarea numelui s-a facut
corect sau nu .
Verificarea autentificarii in serverul SQL

 verificarea se face separat pt. fiecare mod in parte : windows


sau sql,
 Se foloseste aplicatia osql.exe ce se instaleaza odata cu SQL
2005 pe fiecare statie si se gaseste in directorul
C:\Program Files\Microsoft SQL Server\90\Tools\Binn
daca instalarea s-a facut cu setarile implicite .
 Se deschide o fereastra Cmd si se tasteaza :
osql.exe –E –S nume_server
daca dorim sa verificam autentificarea Windows si
osql.exe –S server_name –U sa
daca dorim sa verificam autentificarea SQL
Verificarea autentificarii in serverul SQL
 Explicatii:
- prima comanda incearca sa se conecteze la SQL-Server
folosind autentificare Windows definita in Windows-Users
Management (Windows_Authentication), iar semnificatia
parametrilor comenzii este :
-S = nume server, -E = se utilizeaza conexiune de incredere
- a doua comanda incearca sa se conecteze utilizind
SystemAdministrator-account definit in Enterprise Manager
(SQLAuthentication), iar semnificatia parametrilor comenzii
este :
-S = nume server, -U = nume user – sa in exemplul nostru
 Atentie la sintaxa comenzilor si tipul caracterelor .
 In slide-ul urmator se dau 2 exemple de folosire a utilitarului
osql.exe pt. testarea ambelor moduri de autentificare.
Verificarea autentificarii in serverul SQL

 daca testele au reusit se poate trece la realizarea


conexiunii in Accumark Utilities.
Conectarea la server din Accumark
Conectarea la server din Accumark
(alta metoda)
 O alta metoda de conectare la server este si
folosirea DSN (data source name),
 ODBC -> Open DataBase Connectivity
 Scopul ODBC este de a se simplifica accesul la tot
felul de baze de date .
 O conexiune DSN este un driver ODBC ce permite
altor pachete de programe ca Access si Excel sa
se conecteze la un Database-System.
 DSN este o “interfata” prin care se configureaza
o conexiune prin intermediul ODBC.
 In functie de aplicatie pt. fiecare Database-
System fabricantul acestei baze de date trebuie
sa furnizeze un astfel de driver .
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN

 System-DSN : aceasta baza este disponibila la


toti userii ce se logheaza pe calculator,
 User-DSN: aceasta baza este disponibila doar
pt. un user particular.
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Conectarea la server din Accumark
Cum se defineste un system-DSN
Crearea unei zone de lucru
Crearea unei baze de date relationale
 aceasta este o baza de date unde Accumark-Data este stocata. Aici sunt tinute
informatiile despre Modele, Markere si Piese. Aceasta baza este actualizata
automat de fiecare data cind un model sau o incadrare sau piesa sunt create
sau modificate. Avantajul este ca si alte aplicatii precum Excel sau Access o pot
accesa ca sa ia informatii pt. rapoarte.
In concluzie aici sunt memorate informatii statistice in timp ce devin disponibile
oricui are nevoie .
Conectarea la baza de date
relationala
Sincronizarea bazei de date
relationale
Backup-ul in SQL
 Trebuie sa facem distinctie intre :

- user-databases (AccuMark-storage areas) si


- system-databases (master, msdb, model)

Cele mai importante baze sunt user-databases si master-


database. Master-database tine toate informatiile despre
obiectele din baza de date. Daca aceasta baza este pierduta
clientul este intr-o mare incurcatura si de aceea este
obligatoriu sa planifice backup-uri regulate si sa le pastreze
intr-un loc sigur ( de ex. master-database se modifica
atunci cind se creaza un login sau o noua baza). Ca regula
generala se recomanda backup-ul la toate bazele in mod
regulat .
Scurta excursie in interiorul SQL
 Informatiile unei baze de date sunt memorate in 2 fisiere separate
: fisier database ( extensie .mdf) si fisier tip log ( extensie .ldf )
 Serverul urmareste unde sunt stocate informatiile si pt. a se
proteja de accidente va urmari continuu asa numitele
transactions care sunt memorate intr-un fisier de tip log.
Scurta excursie in interiorul SQL
(continuare)
 O tranzactie este un set de comenzi care sunt declarate si executate pt. a
modifica o baza de date ca de ex. memorarea sau stergerea unei piese .
Pt. a fi mai clar voi da un exemplu de tranzactie la o banca :
- avem 2 conturi A si B fiecare cu 1000 euro . Vrem sa transferam 100
euro din contul A in contul B. Aceasta operatie va fi facuta in mai multi
pasi :
1. se scot 100 euro din contul A ( acum contul A are 900 euro , contul B
are 1000 euro iar cei 100 euro sunt undeva in server .
2. se transfera cei 100 euro in contul B . Acum A are 900 euro iar B are
1100 .
Totul ar fi bine daca in timpul acestor operatii nu ar apare un incident in
momentul in care cei 100 euro nu mai sunt nici in contul A nici in contul B
( adica dupa pasul1 si inainte de 2 ) si ar disparea in neant .
Deoarece acest lucru nu este acceptabil motorul serverului urmareste
fiecare pas numit tranzactie .
Dupa restaurarea serverului motorul bazei intra in fisierul log de tranzactii
si determina ce tranzactii nu au fost finalizate si porneste o asa numita
operatiune de roll-back catre inceputul tranzactiei nefinalizate.
 Nu trebuie sa se inteleaga prin aceasta ca se pot recupera date
sterse si asta pt. ca operatia de stergere este la rindul ei o
tranzactie si care daca s-a finalizat cu succes nu mai poate fi
reintoarsa din drum ( roll-back), singura solutie care mai ramine
fiind restaurarea serverului cu niste date anterioare stergerii.
Solutii de backup

 Copiere fisiere : nu se recomanda. Pt. a fi


executata se va stopa serverul si apoi se
vor copia directoarele ce contin serverul in
alt loc, apoi se restarteaza serverul .
Restaurarea se face in sens invers .
 Aplicatii profesionale ce realizeaza aceasta
functie : Arc-Serv, Veritas.
 Backup-ul din cadrul serverului SQL, cu
ajutorul aplicatiei Server Management
Studio.Se va face backup-ul fiecarei baze
de date in parte .
Cum se face backup la o baza de date
 Ne folosim de Server Management Studio si se
fac pasii prezentati mai jos :
Cum se face backup la o baza de date
( continuare )
Cum se face backup la o baza de date
( continuare )
Cum se face backup la o baza de date
( continuare )
Cum se face backup la o baza de date
( continuare )
Cum se face restaurarea
Restaurare din locatia implicita
Restaurare din locatia implicita (continuare)
Restaurare din locatia implicita (continuare)
Restaurare din alta locatie