Wstęp do MS SQL Server 2005

Transkrypt

Wstęp do MS SQL Server 2005
Bazy danych
Wstęp do MS SQL Server 2005
63
64
Bazy danych
Przegląd zagadnień
Konfiguracja uslug serwera
Ustawienia serwera
Tworzenie baz danych
Opcje baz danych
Podsumowanie
Laboratorium
Dobry administrator Systemu Zarządzania Bazami Danych (w skrócie
SZBD) wie wszystko o bazach danych. W dzisiejszych czasach rola
administratora nie ogranicza się do zarządzania istniejącymi bazami danych, ale
równieŜ wymaga umiejętności tworzenia baz danych i ich obiektów. Jedną
administracyjnych
stało
się
równieŜ
z podstawowych
czynności
konfigurowanie baz danych.
W tym module omówiona zostanie struktura typowego SZBD na podstawie MS
SQL Server 2005. Dowiesz się równieŜ, jakie ustawienia baz danych są
najistotniejsze z punktu widzenia poprawnego działania tych baz.
Bazy danych
65
Konfiguracja usług serwera
Usluga serwera
Usluga automatyzacji zadan
Bezpieczenstwo uslug
Narzedzia konfiguracji uslug
Właściwie kaŜde oprogramowanie określane mianem serwera (serwer
WWW, serwer baz danych) działa na podobnej zasadzie - opiera się na
uruchomionych w systemie operacyjnym usługach. Od konfiguracji tych usług
zaleŜy, czy i jak będzie funkcjonował serwer.
66
Bazy danych
Usługa serwera
Silnik SZBD odpowiedzialny za przechowywanie danych,
utrzymywanie spójności danych i obsługę poleceń języka zapytań praktycznie
zawsze jest toŜsamy z główną usługą serwera. Aby uŜytkownicy mogli stale
korzystać z tej usługi, powinna być ona uruchomiona praktycznie zawsze (nie
licząc czasu na ewentualne prace administracyjne wymagające pracy serwera
"offline").
Dodatkowo, poniewaŜ niektóre czynności wymagają restartu samej maszyny,
usługa ta powinna być skonfigurowana jako uruchamiana wraz ze startem
systemu operacyjnego. Niektóre systemy operacyjne pozwalają równieŜ na
określenie zachowań usługi w momencie, gdy zostanie ona nieoczekiwanie
zatrzymana (nie przez uŜytkownika, a na przykład na skutek awarii).
Dla przykładu, w systemie Microsoft Windows Server 2003 moŜna
skonfigurować kaŜdą usługę tak, by po nieoczekiwanym zatrzymaniu była
podejmowana próba automatycznego restartu usługi (czyli ponownego jej
uruchomienia).
Usługa automatyzacji zadań
Dobry administrator potrafi wykorzystać zdobycze techniki
i zautomatyzować pracę SZBD tak, by mieć przy nim jak najmniej pracy. Do
automatyzacji najczęśćiej słuŜy usługa, która albo jest oferowana przez system
operacyjny, albo jest dostarczana wraz z SZBD.
Usługa ta pozwala między innymi na tworzenie harmonongramów (ang.
schedule) tworzenia kopii zapasowych baz danych. Taką usługą w systemie
Microsoft SQL Server jest SQL Server Agent. NaleŜy zadbać o to, by taka
usługa była zawsze uruchomiona, a często domyślnie usługi te są wyłączone
lub zatrzymane.
Bezpieczeństwo usług
W trakcie konfiguracji usług SZBD naleŜy kierować się pewnymi
zasadami, by uniknąć nieprawidłowości w ustawieniach i w działaniu serwera.
Zasady te dotyczą głównie kwestii związanych z bezpieczeństwem środowiska.
Pierwszą waŜną zasadą jest zasada minimalizacji ilości usług. Mówi ona, Ŝe
naleŜy zawsze instalować / uruchamiać tylko te usługi, z których w danym
momencie korzysta nasz SZBD. Pozostałe usługi o ile mogą być zainstalowane
(w przyszłości moŜe się okazać, Ŝe jakaś dodatkowa usługa będzie potrzebna),
o tyle ich uruchamianie powoduje, Ŝe administrator ma więcej pracy, zaś
w systemie znajduje się więcej potencjalnych słabych punktów.
Zasada ta obowiązuje głównie osoby administrujące systemami i sieciami
komputerowymi. Stosowanie się do niej moŜe znacznie zwiększyć
bezpieczeństwo systemu.
Druga zasada dotyczy konfiguracji kontekstu usług. Usługi w systemie
operacyjnym działają jak uŜytkownicy - wykonują operacje i mają określone
uprawnienia. W niektórych systemach (Windows) kaŜdej usłudze
przyporządkowane jest konto uŜytkownika. Mówimy, Ŝe "usługa pracuje
w kontekście uŜytkownika". Oznacza to, Ŝe usługa działa w systemie
operacyjnym i w sieci na takich samych uprawnieniach, jakie zostały określone
dla uŜytkownika.
W związku z tym pojawia się problem wyboru właściwego konta dla usług
SZBD. Problem ten dotyczy głównej usługi SZBD oraz usługi odpowiedzialnej
za automatyzację zadań w tym systemie.
Bazy danych
67
Większość systemów operacyjnych oferuje wbudowane konta o kreślonych
uprawnieniach. Niestety, uprawnienia te na ogół są zbyt duŜe, by konta
systemowe moŜna było wykorzystać do pracy z usługami SZBD. Przykładem
takiego konta jest konto Local System (Lokalne Systemowe) w systemach
Microsoft Windows.
Konto to działa jako element systemu operacyjnego, co w praktyce oznacza, Ŝe
ma uprawnienia nawet większe od tych, jakie posiada administrator systemu.
Stąd pierwszy wniosek - na ogół nie wybieramy wbudowanych kont
systemowych dla usług SZBD. Powstaje pytanie - jakich w takim razie kont
uŜywać?
Jeśli serwer ma pracować w środowisku rozproszonym, ma mieć moŜliwość
dostępu do innych serwerów i dodatkowo maszyna znajduje się w domenie, to
wybieramy dla usług SZBD konto domenowe, specjalnie utworzone
i skonfigurowane. Konto to powinno mieć ustawienia, które pozwolą w sposób
nieprzerwany pracować usłudze.
Zatem - naleŜy ustawić dla tego konta silne hasło, które: nie powinno mieć daty
wygasania ("hasło nigdy nie wygasa") i nie powinno być zmieniane przez
uŜytkowników ("uŜytkownik nie moŜe zmieniać hasła", bez opcji "uŜytkownik
musi zmienić hasło przy pierwszym logowaniu"). Co do uprawnień konta,
naleŜy rozwaŜyć przydzielenie konta do roli lokalnego administratora (dla
potrzeb na przykład automatycznego restartu usługi w przypadku
nieoczekiwanego jej zatrzymania).
Czasami taka konfiguracja jest wymagana (na przykład przy instalacji systemu
Microsoft SQL Server w klastrze Microsoft Windows). Dla głównych usług
SZBD moŜesz skonfigurować jedno konto (ułatwia to zdecydowanie
administrację kontami). Nazwa konta to dla zwiększenia bezpieczeństwa nie
powinna kojarzyć się z SZBD.
Narzędzia konfiguracji usług
Większość systemów operacyjnych oferuje narzędzie do
zcentralizowanego zarządzania usługami zainstalowanymi w systemie. Jednak
poniewaŜ ogólna ilość usług w systemach operacyjnych jest ogromna,
a dodatkowo bardzo często usługi SZBD wymagają dodatkowych ustawień,
producenci zazwyczaj dodają do SZBD narzędzie (lub zestaw narzędzi) do
zarządzania usługami tylko samego SZBD.
Dla przykładu, W systemie Microsoft SQL Server 2005 są dwa narzędzia do
zarządzania usługami: Configuration Manager oraz Surface Area
Configuration. Pierwszy program umoŜliwia zarządzanie usługami
i protokołami sieciowymi, zaś drugi pozwala włączać domyślnie wyłączone
dodatkowe mechanizmy SZBD.
68
Bazy danych
Rys. 3.1 Microsoft SQL Server Configuration Manager
Bazy danych
69
Ustawienia serwera
Konfiguracja dotyczaca sprzetu
Konfiguracja dotyczaca ustawien programowych
serwera
Po zainstalowaniu SZBD i skonfigurowaniu usług przychodzi czas na
konfigurację samego serwera.
70
Bazy danych
Konfiguracja dotycząca sprzętu
Jedne z pierwszych ustawień, jakich dokonuje administrator serwera
baz danych, to ustawienia dotyczące sprzętu. Rozwój informatyki i przemysłu
komputerowego sprawił, Ŝe dzisiejszy serwer to na ogół maszyna o ogromnej
mocy obliczeniowej, wyposaŜona w wielką ilość pamięci masowej, kilka lub
nawet kilkanaście procesorów (dodatkowo na ogół wielordzeniowych), kilka
szybkich kart sieciowych. Pojawiły się teŜ maszyny 64-bitowe, które oferują
wydajność dotąd niespotykaną (miliony transakcji na sekundę).
JeŜeli serwer jest dedykowany, to znaczy przeznaczony do pracy tylko z SZBD,
konfiguracja właściwie nie nastręczna problemów, poniewaŜ zasoby maszyny
mogą być niemal w całości wykorzystane przez SZBD.
Jeśli jednak serwer nie jest dedykowany tylko do pracy z SZBD, najczęściej
potrzebna jest dodatkowa konfiguracja. Konfiguracja ta dotyczy na ogół
ograniczenia wykorzystania pamięci operacyjnej serwera przez SZBD oraz
uŜycia określonego zestawu procesorów spośród wszystkich procesorów
serwera.
Microsoft SQL Server 2005 daje moŜliwość skorzystania z technologii AWE
(ang. Address Windowing Extensions), która umoŜliwia wykorzystanie
nieprawdopodobnej ilości 64GB pamięci RAM nawet na platformach 32bitowych (które mają naturalne ograniczenie obsługi do 4GB RAM).
Warunkiem jest wykorzystanie systemu operacyjnego Microsoft Windows
2000 Server lub Microsoft Windows Server 2003.
MoŜliwe jest ustawienie minimalnego i maksymalnego poziomu wykorzystania
pamięci RAM przez SZBD. W przypadku, gdy SZBD współdzieli zasoby
z innym oprogramowaniem, naleŜy zapewnić odpowiednie wykorzystanie
pamięci. TakŜe w przypadku zaawansowanych instalacji trzeba pomyśleć
o odpowiedniej konfiguracji RAM.
Dla przykładu, w klastrze o architekturze aktywny-aktywny (dwa SZBD
współdzielone przez dwa węzły klastra) naleŜy ustawić odpowiednio niski
maksymalny poziom wykorzystania pamięci przez obie instancje SZBD.
W przeciwnym wypadku po przejściu w awaryjny tryb pracy jednej z instancji
pojedyncza maszyna moŜe nie poradzić sobie z dwiema instancjami SZBD.
Jeśli Twoja maszyna ma więcej niŜ jeden procesor, moŜesz chcieć ograniczyć
liczbę uŜywanych przez SZBD procesorów przez ustawienie tzw. maski
afiniczności (ang. affinity mask). Jest to konfiguracja binarna mówiąca o tym,
które z procesorów będą wykorzystane przez SZBD.
Które procesory wybrać? Łatwiej zdecydować, których nie wybierać. Procesor
0 (pierwszy) zazwyczaj jest wykorzystywany przez system operacyjny, zatem
często administratorzy decydują się na wykluczenie go z grupy procesorów
wykorzystywanych przez SZBD. Ponadto ostatni procesor jest wykorzystywany
przez kartę sieciową, więc często administratorzy serwerów baz danych
wybierają równieŜ ten procesor jako ten, który nie będzie wykorzystywany na
potrzeby operacji na bazach danych.
Konfiguracja ustawień programowych serwera
Oprócz ustawień dotyczących wykorzystania sprzętu, administrator
musi dokonać konfiguracji ustawień programowych. Ustawienia te dotyczą
m.in. konfiguracji wszelkich dodatkowych funkcjonalności, opcji
bezpieczeństwa czy opcji połączeń. Wszelkie ustawienia moŜna zmieniać na
Bazy danych
71
dwa sposoby: korzystając z narzędzi graficznych (jak SQL Server Management
Studio) lub uŜywając odpowiednich składni języka zapytań (procedury
systemowe). Na przykład poniŜszy kod powoduje włączenie obsługi
wspomnianej technologii AWE na serwerze Microsoft SQL Server.
-- aktywacja zaawansowanych opcji
EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO
-- włączenie awe
EXEC sp_configure 'awe enabled', 1
RECONFIGURE
GO
Konfiguracja ustawień programowych z uŜyciem interfejsu uŜytkownika
w systemie Microsoft SQL Server 2005 polega na wykorzystaniu dwóch
aplikacji: SQL Server Management Studio oraz SQL Server Surface Area
Configuration (SAC).
Praktycznie kaŜdy SZBD posiada narzędzie do zcentralizowanego zarządzania
ustawieniami serwera. W przypadku systemu Microsoft SQL Server 2005
narzędziem tym jest SAC. SAC pozwala na definiowanie zasad działania usług,
włączanie i wyłączanie dodatkowych funkcjonalności systemu, kontrolę nad
połączeniami i protokołami sieciowymi. Co jest najwaŜniejsze, w systemie
zastosowano zasadę "domyślnie wyłączone", dzięki czemu serwer po
zainstalowaniu jest wolny od potencjalnych zagroŜeń. JeŜeli masz do
skonfigurowania wiele serwerów, narzędziem, którym powinieneś się
zainteresować jest sac.exe (z linii poleceń). Narzędzie to umoŜliwia eksport /
import ustawień konfiguracji serwera, co daje moŜliwość poprzez jednorazową
konfigurację wybranego serwera, implementację tych samych ustawień na
wielu serwerach.
Rys. 1.3.1 Surface Area Configuration
Rys. 3.2 Centralne zarządzanie MS SQL Server 2005
72
Bazy danych
JeŜeli chcesz dowiedzieć się więcej na temat konfiguracji systemu Microsoft
SQL Server 2005, zajrzyj do dokumentacji Books Online (dokumentacja
dołączona do tego systemu). Znajdziesz tam zarówno opis funkcjonalności
wymienionych narzędzi, jak i opis procedury systemowej sp_configure.
Bazy danych
73
Tworzenie baz danych
Rozmieszczenie plików bazy danych
Bezpieczenstwo fizyczne danych
Jeśli dysponujesz juŜ gotowym projektem relacyjnej bazy danych, musisz
wiedzieć, Ŝe czeka Cię jeszcze długa droga, zanim baza powstanie na serwerze
i rozpocznie swoje Ŝycie. Zanim zaimplementujesz bazę danych, musisz
zaplanować wiele ustawień dotyczących róŜnych aspektów działania bazy.
74
Bazy danych
Rozmieszczenie plików bazy danych
Baza danych składa się z plików. Plik bazy moŜna podzielić na pliki
danych i pliki dziennika transakcji. W plikach danych przechowywane są
obiekty baz danych, takie jak tabele (wraz z danymi), indeksy czy procedury
składowane. W plikach dziennika transakcji system zapisuje strony (w
przypadku systemów SQL Server strona to blok 8kB) zawierające modyfikacje
danych.
Rozmieszczenie plików odgrywa znaczącą rolę w procesie tworzenia
i optymalizacji bazy danych. Istnieje szereg zasad przydatnych w planowaniu
fizycznej implementacji bazy danych. Zasady te to m.in.:
1. Pliki dziennika transakcji naleŜy umieszczać na innym dysku fizycznym
niŜ pliki danych - w przypadku awarii jednego z dysków tracimy tylko
część bazy.
2. Tabele często występujące razem w złączeniach (ang. joins) naleŜy
umieszczać w osobnych plikach (grupach plików) na osobnych dyskach
fizycznych - dzięki temu moŜliwe jest równoległe pobieranie danych z tych
tabel.
3. Indeksy nieklastrowane naleŜy umieszczać na innych dyskach fizycznych
niŜ ich bazowe tabele - zyskujesz większą wydajność zapisu danych.
4. Tabele często modyfikowane naleŜy oddzielić fizycznie (umieścić na
innym dysku) od tabel rzadko modyfikowanych - w przypadku większych
baz danych upraszcza to proces wykonywania kopii zapasowych.
Jednoczesne spełnienie wszystkich wymienionych punktów jest raczej
niemoŜliwe, ale w idealnym przypadku oddzielenie dziennika transakcji od
danych i maksymalne rozczłonkowanie danych pomiędzy tak wiele dysków, jak
się da, byłoby rozwiązaniem dającym maksymalne bezpieczeństwo i wydajność
bazy.
Bezpieczeństwo fizyczne danych
Dane, jak i dziennik transakcji moŜna dodatkowo zabezpieczyć przed
ewentualnymi awariami dysków fizycznych. Do tego celu naleŜy uŜyć
macierzy dyskowych z zaimplementowanymi konfiguracjami RAID (ang.
Redundant Array of Independent Disks).
Istnieje wiele konfiguracji RAID, ale do najbardziej znanych i zarazem
najczęściej stosowanych naleŜą: RAID-0, RAID-1, RAID-5 oraz RAID-10.
Więcej o systemach RAID i bezpieczeństwie SZBD znajdziesz w module 12.
Bazy danych
75
Opcje baz danych
Ustawienia dotyczace plików
Ustawienia dotyczace bazy danych
Przy tworzeniu bazy danych administrator musi zdecydować o jej
konfiguracji. Konfiguracja ta dotyczy nie tylko plików bazy danych, ale takŜe
pewnych ustawień samej bazy danych. Ustawienia te decydują o tym, jak
będzie się zachowywała baza w trakcie swojego cyklu Ŝycia.
76
Bazy danych
Ustawienia dotyczące plików
Po wybraniu odpowiedniej struktury bazy i określeniu jej nazwy
przychodzi pora na ustawienie pewnych właściwości plików bazy danych.
Ustawienia te to:
•
•
•
•
•
•
ilość i lokalizacja plików,
wielkość początkowa plików,
sposób powiększania plików (powinien zostać wybrany automatyczny
przyrost rozmiaru),
maksymalny rozmiar dla kaŜdego z plików (alternatywnie moŜna
maksymalny
rozmiar pozostawić nieokreślony, ale wówczas administrator jest
zmuszony do monitorowania wolnego miejsca na dysku twardym),
nazwy logiczne plików.
Rys. 3.3 Opcje plików bazy danych w Microsoft SQL Server 2005
W praktyce naleŜy pamiętać o takim ustawieniu rozmiaru początkowego
plików, by znalazło się w nich miejsce na nowe dane. Proces powiększania
rozmiaru pliku moŜe niepotrzebnie obciąŜyć bazę danych. Co za tym idzie,
naleŜy teŜ zadbać o to, by przyrost rozmiaru pliku nie był zbyt mały.
Najlepszym nawykiem jest manualne powiększanie rozmiarów plików poza
godzinami, w których baza jest uŜywana przez największą liczbę
uŜytkowników. Opcja automatycznego powiększania plików powinna być
ustawiona na wszelki wypadek (gdyby administrator zapomniał o swoich
obowiązkach lub wystąpiła nieoczekiwana sytuacja wymagająca powiększenia
pliku).
Dziennik transakcji naleŜy ustawić na początek na 20-30% rozmiaru plików
danych. W trakcie pracy bazy danych rozmiar ten moŜna zmienić wedle potrzeb
.
Bazy danych
77
Ustawienia dotyczące bazy danych
Równie waŜne, jak ustawienia plików, są ustawienia samej bazy
danych. Ustawienia te, to na przykład:
•
•
•
•
ustawienia dotyczące języka, metod sortowania tekstu, znaków
dialektycznych,
ustawienia dotyczące zapisu zmian w dzienniku transakcji (tzw. model
przywracania bazy, ang. recovery model),
ustawienia dotyczące statystyk (statystyki to zapis rozkładu danych w
kolumnach najczęściej wykorzystywanych w tabelach, mogą być
tworzone i utrzymywane automatycznie),
ustawienia dotyczące dostępu do bazy danych (w niektórych
sytuacjach niezbędne jest ograniczenie dostępu do bazy danych dla
uŜytkowników, np. przy przywracaniu bazy danych z kopii zapasowej).
Rys.3.4 Opcje bazy danych w Microsoft SQL Server 2005
Ustawienia opcji bazy danych zmieniają się w trakcie działania bazy. Zmiany
dokonywane są przy pomocy narzędzi graficznych (np. SQL Server
Management Studio) lub poleceń SQL (np. ALTER DATABASE)
78
Bazy danych
Podsumowanie
Konfiguracja uslug serwera
Ustawienia serwera
Tworzenie baz danych
Opcje baz danych
Znajomość opcji bazy danych jest niezbędna do prawidłowej
administracji. Odpowiednia konfiguracja ustawień juŜ na początku istnienia
bazy danych zaoszczędza wiele pracy administratorowi. Wszystkie zmiany
ustawień powinny być na bieŜąco dokumentowane, zwłaszcza w przypadku,
gdy z serwerem pracuje wielu administratorów.
Dobrym nawykiem jest teŜ zapisanie ustawień skonfigurowanych po
stworzeniu bazy danych. MoŜna dokonać zapisu tych ustawień wykonując
kopię zapasową bazy danych lub zapisując odpowiedni skrypt SQL.
Bazy danych
79
Laboratorium
W tym ćwiczeniu przyjrzymy się ustawieniom serwera MS SQL Server 2005.
Stworzymy równieŜ własną bazę danych oraz przyjrzymy się jej opcjom.
80
Bazy danych
Ustawienia serwera
W tym ćwiczeniu ustawisz kilka opcji serwera Microsoft SQL Server
przy pomocy interfejsu graficznego oraz przy uŜyciu systemowych procedur
składowanych.
Krok 1 - Opcje w interfejsie graficznym
► Zaloguj się do maszyny wirtualnej ZBD jako uŜytkownik
Administrator z hasłem P@ssw0rd.
► Kliknij Start. Z grupy programów Microsoft SQL Server 2005
uruchom SQL Server Management Studio.
► W oknie logowania kliknij Connect.
Rys. 1.2.1 SQL Server Management Studio
Rys. 3.5 MS SQL Server Management Studio
►
►
►
►
Kliknij prawym przyciskiem w oknie Object Explorer, które znajduje
się po lewej stronie ekranu.
Z menu kontesktowego wybierz opcję Properties.
W oknie Properties kliknij po lewej stronie na pozycji Memory.
Ustaw opcję Minimum server memory (in MB) na 40MB. Takie
ustawienie spowoduje, Ŝe SZBD będzie zawsze zajmował
przynajmniej 40MB pamięci RAM.
Zwróć uwagę na moŜliwość zapisania skryptu, w którym znajdą się wszystkie
akcje zapisane w odpowiedniej składni T-SQL. Właściwie wszystkie okna
słuŜące do wykonywania operacji na serwerze lub w bazach danych pozwalają
zapisać wykonywane operacje w postaci skryptu.
Bazy danych
81
Rys. 3.6 Opcje serwera dotyczące pamięci
►
Kliknij OK.
Krok 2 - Przeglądanie listy opcji serwera
►
►
Mając ciągle otwarty program SQL Server Management Studio w
lewym górnym rogu kliknij przycisk New Query.
W oknie edytora wpisz poniŜszy kod.
EXEC sp_configure
GO
SELECT * FROM sys.configurations
ORDER BY name
GO
►
Wciśnij F5, aby uruchomić wpisany kod.
Obie powyŜsze składnie pokazują informacje o ustawieniach opcji serwera.
Procedura systemowa sp_configure wyświetla jedynie nazwy opcji i ich
aktualne ustawienia. Widok systemowy sys.configurations wyświetla nieco
więcej detali (między innymi minimalne i maksymalne wartości opcji).
82
Bazy danych
Krok 3 - Ustawianie opcji serwera przy uŜyciu procedury sp_configure
►
W oknie edytora wpisz poniŜszy kod.
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'min server memory (MB)', 30
GO
RECONFIGURE
GO
PowyŜszy kod zmienia minimalny poziom wykorzystania pamięci przez SZBD
na 30MB (czyli jest to modyfikacja ustawienia, które w kroku 1 modyfikowałeś
uŜywając interfejsu graficznego).
►
Wciśnij F5, aby uruchomić wpisany kod.
ZauwaŜ, Ŝe zmiana większości ustawień nie wymaga restartu SZBD. Natomiast
wymaga czasem włączenia pokazywania zaawansowanych opcji ("show
advanced options") oraz rekonfiguracji (RECONFIGURE).
Bazy danych
83
Tworzenie baz danych
W tym ćwiczeniu stworzysz przykładową bazę danych.
Krok 1 - Tworzenie bazy danych przy uŜyciu interfejsu graficznego
►
►
►
►
►
Zaloguj się do maszyny wirtualnej ZBD jako uŜytkownik
Administrator z hasłem P@ssw0rd.
Kliknij Start. Z grupy programów Microsoft SQL Server 2005
uruchom SQL Server Management Studio.
W oknie logowania kliknij Connect.
W oknie Object Explorer kliknij prawym przyciskiem myszy na
folderze Databases i z menu kontekstowego wybierz New Database....
W pole Database name wpisz nazwę bazy danych TestDB.
Ustaw początowe wielkości plików na 10MB dla pliku danych i 3MB
dla pliku dziennika transakcji.
Okno tworzenia bazy powinno wyglądać jak poniŜej.
Rys. 3.7 Tworzenie nowej bazy danych
Krok 2 - Przeglądanie skryptu tworzącego bazę danych
►
►
►
Kliknij w menu głównym programu Management Studio na File.
Kliknij Open - File.
Odszukaj plik C:\Labs\Lab02\CreateDatabase.sql i kliknij Open.
84
Bazy danych
PoniŜszy kod to skrypt zapisany przy wykonywaniu operacji, którą
wykonałeś w kroku 1.
CREATE DATABASE [TestDB]
ON PRIMARY
( NAME = N'TestDB',
FILENAME = N'C:\Program Files\Microsoft
Server\MSSQL.1\MSSQL\DATA\TestDB.mdf' ,
SIZE = 10240KB ,
FILEGROWTH = 1024KB )
LOG ON
( NAME = N'TestDB_log',
FILENAME = N'C:\Program Files\Microsoft
Server\MSSQL.1\MSSQL\DATA\TestDB_log.ldf' ,
SIZE = 3072KB ,
FILEGROWTH = 10%)
GO
SQL
SQL
Objaśnienia do powyŜszego kodu:
•
•
•
•
•
system tworzy bazę o nazwie TestDB,
baza danych składa się z dwóch plików - pliku danych o nazwie
TestDB i pliku dziennika transakcji o nazwie TestDB_log,
plik TestDB ma rozmiar początkowy 10MB i rozrasta się w przypadku
braku miejsca dla danych w pliku o dodatkowy 1MB,
plik TestDB_log ma rozmiar początkowy 3MB i rozrasta się w
przypadku braku miejsca dla danych w pliku o 10% aktualnego
rozmiaru pliku,
pliki bazy danych są zlokalizowane w domyślnym folderze
przechowującym bazy danych systemu Microsoft SQL Server 2005.
Rozmiar bazy danych zaleŜy od rozmiaru danych. Szacując rozmiar bazy
musisz brać pod uwagę nie tylko tabele, ale takŜe indeksy i przechowywanie
typów LOB (ang. Large OBjects).
Rozmiar dziennika transakcji powinieneś ustawić na 30% rozmiaru plików
danych. W trakcie działania bazy rozmiar ten moŜna odpowiednio
zmodyfikować.
Krok 3 - Ustawienie opcji bazy danych
►
►
Kliknij prawym przyciskiem myszy na bazie danych TestDB i z menu
kontekstowego wybierz Properties.
W oknie Database Properties - TestDB kliknij po lewej stronie na
opcji Options.
Bazy danych
85
Rys. 3.8 Opcje bazy danych
►
Zmień ustawienie opcji Recovery model na Simple.
Recovery model to opcja bazy danych, która decyduje o tym, jak duŜo
informacji o modyfikacjach danych będzie zapisywana do dziennika
transakcji bazy danych.
Listę opcji bazy danych znajdziesz w Books Online pod hasłem database
options (najszybciej znajdziesz ten fragment pomocy uŜywając indeksu
dostępnego w Books Online).