Wykład 1

Transkrypt

Wykład 1
Wstęp
Baza danych – Obszar danych i oprogramowania w
postaci systemu zarządzania bazą danych.
Zbiór danych pamiętanych w systemie komputerowym
dot. pewnej wyodrębnionej całości, wzajemnie
powiązanej i wykorzystanej przez wielu użytkowników.
System Zarządzania Bazą Danych – SZBD, ang.
DBMS – jest to uniwersalny system programów
umożliwiający tworzenie i obsługę baz danych w
różnych zastosowaniach.
Struktura SZBD
Programiści aplikacji
Administrator b.d.
•Definiowanie struktury i
utworzenie b.d.
•Strojenie b.d.
Aplikacja (pr. użytkowe)
Pytania interakcyjne
•Wprowadzenie danych
•Wyszukiwanie danych,
przetwarzanie i wizualizacja
•Aktualizacja danych
•Archiwizacja danych o
odtwarzanie b.d. po awarii
Użytkownicy okazjonalni
•Usuwanie danych
•Tworzenie użytkowników i
nadanie im uprawnień
•Wyszukanie danych
•Przet. i wiz. danych
•inne
Procesor zapytań
– Kontrola dostępu – Wykonanie zapytań – Analiza i optymalizacja zapytań –Kontrola integralności
Moduł zarządzania pamięcią
-Zarządzanie buforami
-Zarządzanie plikami
Model zarządzania transakcjami
-Sterowanie współbieżnym dostępem do b.d.
-prowadzenie dziennika i odtwarzanie stanu b.d.
Opis użyt. i
uprawnień
Metadane
(słownik b.d)
Baza
danych
Dziennik
b.d.
DB2 - Historia
• W roku 1970 IBM opracował model relacyjny bazy danych
oraz SQL
• Tworzono wiele Systemów Zarządzania Relacyjnymi Bazami
Danych na różnych platformach
• W roku 1983 opracowano DB2 v1 na maszynach typu
mainframe MVS (Multiple Virtual Storage)
• Rozwijano pracę nad wersjami DB2 dla innych platform
(Linux, UNIX, Windows)
• W 1996 powstała wersja DB2 UDB V5
– Przechowywanie wszelkich typów danych: audio, wideo...
– Optymalizacja dla środowiska WWW
– Przystosowana dla różnych systemów operacyjnych (OS/2, Windows,
AIX, HP-UX, Solaris...)
– Działa w różnych architekturach komputerowych: systemy
jedno/wieloprocesorowe, SMP, MPP, klastry
• W roku 2004 powstała wersja DB2 V8.2
Edycje DB2 UDB V8.2
• DB2 UDB dostępna jest na następujące systemy:
–
–
–
–
–
–
–
AIX (32, 64 bit)
Solaris UltraSparc (32, 64 bit)
HP-UX oparte na PA-RISC (32, 64 bit)
HP-UX oparte na Itanium (32, 64 bit)
Windows 32 bit
Windows 64 bit oparte na Itanium i AMD Athlon
Linux 32, 64 bit na platformach Intel, pSeries, iSeries oraz
zSeries (z OS, S/390)
– iSeries (OS/400)
– zSeries (OS, OS/390)
Edycje DB2 UDB V8.2
• W ramach systemów UNIX, Linux oraz Windows DB2
licencjonowana jest w trzech edycjach:
– Express
• Dla instancji z maks. 2-ma procesorami
• Licencja na użytkowników obejmuje nazwanych użytkowników
• Serwer dostarczany jako 32 bitowe oprogramowanie dla systemów Windows
i Linux. Planowane są odpowiedniki 64 bitowe
– Wokgroup
• Dla instancji z maks. 4-ma procesorami
• Licencja na użytkowników obejmuje współbieżnych użytkowników
• Serwer dostarczany jako 32 bitowe oprogramowanie dla systemów AIX,
Solaris, HP-UX, Linux, Windows. Planowane są odpowiedniki 64 bitowe
– Enterprise
• Nielimitowana ilość procesorów
• Brak ograniczeń licencyjnych
• Serwer dostarczany jako 32 oraz 64 bitowe oprogramowanie dla systemów
AIX, Solaris, HP-UX, Linux, Windows. Planowane są odpowiedniki 64 bitowe
• Uproszczona edycja bazy DB2 o nazwie Everyplace dostępna
jest na urządzenia przenośne (Palm OS, Windows CE,
Symbian EPOC, QNX, Embedded Linux, Linux, Windows)
Co nowego w DB2 v. 9.5 1/4
• Nowe funkcje wprowadzone z myślą o potrzebach
dynamicznych firm i ich działów informatycznych.
• IBM DB2 9.5 dla systemów Linux, UNIX i Windows
oferuje:
– Większą wydajność obsługi obciążeń o wysokim
priorytecie.
– Przyspieszenie prac programistycznych dzięki
udoskonalonej obsłudze technologii XML.
– Krótszy czas odzyskiwania danych.
– Udoskonalenia techniczne serwera i funkcjonalność
ułatwiającą zachowanie zgodności z formalnymi
przepisami o ochronie danych.
– Udoskonalenia w zakresie administracji, dotyczące
wydajności, łatwości zarządzania i procesu instalacji.
Co nowego w DB2 v. 9.5 1/9
• Wydajność:
– Zwiększenie ilości transakcji przetwarzanych w
ciągu minuty z 3,2 mln do ponad 4 mln.
– W teście obsłużono 3,2 miliona jednoczesnych
użytkowników.
– Przyrost bazy danych to 230GB na godzinę,
rozmiar początkowy to 33 TB (159 mld
rekordów), a efektywnie obsłużony rozmiar
pamięci RAM to 2TB
– Choć całkowity koszt systemu, który ustanowił
rekord to niemal 12 mln dolarów, to cena ta
całkowicie uzasadnia uzyskaną wydajność
Co nowego w DB2 v. 9.5 2/9
•
Pełna funkcjonalność serwera baz danych dla średnich i dużych przedsiębiorstw.
– Produkt może działać na serwerach z systemem Linux, UNIX lub Windows o
różnej wielkości, poczynając od jednoprocesorowych, aż po maszyny z
setkami procesorów.
– DB2 Enterprise 9 jest idealnym fundamentem do budowy korporacyjnych
rozwiązań na żądanie:
• duże hurtownie danych o pojemności wielu terabajtów,
• wysoko wydajne biznesowe systemy transakcyjne działające 24 godziny
na dobę przez 7 dni w tygodniu,
• rozwiązania internetowe.
– Stanowi zaplecze systemów służących do:
• inteligentnej analizy danych,
• zarządzania treścią,
• handlu elektronicznego,
• planowania zasobów przedsiębiorstwa (ERP),
• zarządzania relacjami z klientami (CRM)
• zarządzania łańcuchem dostaw (SCM).
– zapewnia również zgodność, integrację i połączenia z innymi korporacyjnymi
źródłami danych DB2.
Co nowego w DB2 v. 9.5 3/9
• Opłaty za używanie programu:
– DB2 Enterprise 9 zawiera opcje Table Partitioning, High-Availability
Disaster Recovery (HADR), Online Reorganization, MQT,
Multidimensional Clustering (MDC), Query Parallelism, Connection
Concentrator, Governor oraz Tivoli System Automation for
Multiplatforms (SA MP).
– Produkt DB2 Enterprise 9 jest licencjonowany według liczby
procesorów lub według liczby autoryzowanych użytkowników. Dla
każdego autoryzowanego użytkownika produktu należy zakupić
osobną licencję użytkownika, przy czym minimalna liczba licencji
użytkowników przypadających na procesor wynosi 25.
• Oprócz relacyjnej bazy danych produkt zawiera
komponenty IBM Developer Kit, Java Technology,
Distributed Debugger for Java Stored Procedures,
WebSphere Studio Site Developer Advanced (w wersji
próbnej), WebSphere MQ, QMF for Windows (w wersji
próbnej) oraz Data Management Tools (na licencji Try &
Buy).
Co nowego w DB2 v. 9.5 4/9
• Możliwy jest również zakup IBM DB2 Data
Warehouse Enterprise Edition w ramach wymiany
DB2 Universal Database Enterprise Edition
(D56Y2LL) na nowszą wersję.
• Systemy operacyjne i adekwatne do nich
platformy sprzętowe: AIX, HP-UX, Linux,
SUN Solaris, Windows 2000, Windows NT,
Windows - WS2003, Windows XP
Co nowego w DB2 v. 9.5 5/9
• Hybrydowy system relacyjno-hierarchiczny
pozwala na rozszerzenie zapytań o przetwarzanie
w językach XQuery i XPath.
• Gwarantuje:
– elastyczność dostępu do danych, jaką oferuje model
relacyjny,
– wydajność gwarantowaną przez model hierarchiczny.
• DB2 oferuje właśnie wydajność, przy przetwarzaniu
dokumentów XML, które coraz częściej stanowią format danych
przesyłanych w zaawansowanych rozwiązaniach biznesowych.
• Technologia pureXML zapewnia programistom tworzącym
rozwiązania, które często wymagają przetwarzania dokumentów
XML. Stosując DB2 9, automatycznie otrzymamy rozwiązanie,
które pozwala na dostęp do danych przy pomocy tradycyjnych
metod lub poprzez interfejsy generujące pliki XML.
Co nowego w DB2 v. 9.5 6/9
• Technologia określana nazwą Venom
– kompresja oparta o słownik wzorców
– powtarzające się sekwencje bitów, wartości domyślne,
niezdefiniowane wartości (null) są odpowiednio
upakowane
• Pozwala to na zaoszczędzenie przestrzeni dyskowej,
• przyspiesza operacje odczytu i zapisu
• optymalizuje wykorzystanie pamięci operacyjnej
• Dane XML są także kompresowane w oparciu o
słownik, w którym przechowywane są nazwy
elementów XML, natomiast wartości pól w
strukturach hierarchicznych zastępują odpowiednie
kody
Co nowego w DB2 v. 9.5 7/9
• Mechanizmy partycjonowania danych DB2 rozwijane były
głównie na platformie mainframe (DB2 for z/OS), teraz
dostępne są w edycji Enterprise także na pozostałych
platformach
– Funkcjonalność ta jest cechą produktu dostępną w jego cenie, nie
zaś jak w przypadku innych firm płatnym rozszerzeniem
• Dane możemy partycjonować trzema metodami
– partycjonowanie z określonym zakresem, które pozwala na tworzenie
podpartycji
– partycjonowanie wielowymiarowe w klastrze
– partycjonowanie do wielu komputerów funkcją haszującą
– Maksymalny rozmiar pojedynczej, nie partycjonowanej tabeli lub
pojedynczej partycji to 16TB
– Wykorzystując technologię partycjonowania w celu optymalizacji
przetwarzania tak dużej tabeli, dane możemy rozbić na maksymalnie
1000 serwerów DB2 9, z których każdy może obsługiwać 32 tys.
partycji o rozmiarze do 16TB
Co nowego w DB2 v. 9.5 8/9
• Dwie ważne zmiany dotyczą także warstwy
odpowiedzialnej za bezpieczeństwo danych
– technologię Label Based Access Control (LBAC)
zapewniającą kontrolę danych na poziomie
poszczególnych wierszy, jak i kolumn.
• Pozwala to na określenie bardzo dokładnie, które elementy w
tabeli zamierzamy chronić przed niepowołanym dostępem
– technologia tzw. zaufanego kontekstu.
• Na podstawie takich atrybutów jak np. numer IP czy nazwa
użytkownika pochodzących z zewnętrznego systemu możemy
stworzyć kontekst wywołania, a następnie powiązać go z np.
rolą w naszym systemie.
– W ten sposób w skomplikowanych, wielowarstwowych
aplikacjach unikniemy obciążenia wynikającego z konieczności
uwierzytelnienia połączenia
Co nowego w DB2 v. 9.5 9/9
• Automatyczne dostrajanie
– DB2 9 automatycznie przydziela przestrzeń
dyskową oraz dostraja bufory danych.
– Technologia Adaptive Self Tuning Memory pozwala
na określenie wielkości pul buforów przy danym
obciążeniu systemu i dostępnych w nim zasobów.
– System automatycznie dostosuje się też do
przetwarzania transakcyjnego (OLTP) i raportowego
(OLAP), wykorzystując algorytmy uczenia
maszynowego,
– Automatyczne monitorowanie statystyk
zagwarantuje, iż będą one przeliczane w tle tylko
wówczas, gdy jest to rzeczywiście konieczne
Instalacja DB2 UDB - Windows
• Instalacja w języku angielskim: setup /i en
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
• db2start
Instalacja c.d.
Instalacja c.d.
• CREATE TOOLS CATALOG
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Instalacja c.d.
Jaki jest efekt instalacji ?
• Dla instalacji typowej
–
–
–
–
Instalacja oprogramowania
Instalacja najczęściej używane komponenty: ODBC, GUI
Tworzenie użytkownika – Administrator DB2
Tworzenie usług:
• Instancja bazy danych DB2 – DB2-0
• Serwer administracyjny DB2-DAS – DB2DAS00
• Dla instalacji minimalnej
– Instalacja tylko koniecznych komponentów + ODBC
• Dla instalacji nietypowej
– Instalacja tylko koniecznych komponentów
– Użytkownik ma możliwość wyboru komponentów do
instalacji (np. instancja bazy danych czy administratora)
Dodatkowa ochrona - Windows
• Tworzenie 2 grup systemowych
– DB2ADMNS
• Użytkownicy należący do tej grupy mają pełną kontrolę
nad obiektami bazy danych aktualnej instancji
– DB2USERS
• Użytkownicy grupy mają tylko prawo odczytu i
wykonania
• Jeśli nie włączono dodatkowej ochrony
podczas instalacji można to zmienić za
pomocą komendy: db2secv82.exe
Cicha instalacja
• Ma miejsce w przypadku użycia pliku
odpowiedzi
• Pozwala na automatyczną instalację DB2 bez
asysty użytkownika (administratora)
• Plik taki może być tworzony:
– zaznaczając odpowiednie pole podczas instalacji
– generując własny na podstawie przykładowego
pliku odpowiedzi umieszczonego w katalogu:
cd-rom/db2/platform/samples
– wykorzystując narzędzie: db2rspgn
• db2rspgn –d x:\path [-i instance] [noctlnsrv] [nodlfm]
Cicha instalacja c.d.
• Przykład: db2rspgn d:\temp
– Generuje 2 pliki w katalogu d:\temp
• db2ese.rsp (zakładamy, że produkt DB2 UDB ESE jest
zainstalowany - Enterprise Server Edition) – plik
odpowiedzi
• db2.ins – plik z konfiguracją bazy i zawartością
rejestrów
• Instalacja DB2 z wykorzystaniem pliku
odpowiedzi
– cd-rom/setup [/L log_file] /U response_file [/T
trace_file] [/F]
– Przykład
• Setup /U d:\temp\db2ese.rsp
Instalacja w środowisku UNIX
• Przed przystąpieniem do instalacji należy stworzyć 3
grup użytkowników i 3 użytkowników
– Właściciel instancji DB2 (Instance Owner)
• Kontroluje wszystkie procesy DB2 i jest właścicielem systemów
plików i zasoby użyte przez bazę danych i instancję
– Fenced User
• uruchamia zewnętrzne procedury i funkcje bazy danych (UDFs)
– Użytkownika administratora systemu (DAS)
• Administruje procesami serwera bazy danych
• Używany przez GUI do administrowania instancjami i bazami
danych
– Dla tych trzech użytkowników należy stworzyć odpowiednie
grupy
Instalacja w środowisku UNIX
• Instalacja graficzna wymaga uruchomienia
środowiska X-Windows
– xhost
– export DISPLAY:=0
– ./db2setup
• Na platformach Linux/Unix należy się logować
jako root i zamontować CD-ROM następnie
uruchomić program db2setup
• Na platformach SOLARIS, AIX 5 L należy
kopiować spakowane oprogramowanie na
system plików następnie go instalować
– zcat ese.tar.Z |tar –xvf -;./ese/db2setup
Instalacja w środowisku UNIX
• Instalacja w trybie graficznym zapewnia:
– Instalacja binariów
– Tworzenie instancji: db2inst1
– Instalacja serwera administracyjnego: dasusr1
Instalacja DB2 w katalogu:
/usr/opt/db2_08_01 (AIX) - /opt/IBM/db2/V8.1 (pozostałe UNIX,Linux)
Tworzenie 3 użytkowników:
Instance owner dbinst1, DAS
dasusr1, Fenced db2fenc1
Tworzenie 3 grup:
db2idam1, dasadm1, db2fadm1
Tworzenie i konfiguracja instancji
DB2. Defaultowo: db2inst1
Tworzenie DAS. Defaultowo:
dasusr1 dla AIX db2as
Generowanie logów instalacji: /tmp/db2setup.his, /tmp/db2setup.log,
/tmp/db2setup.err
Instalacja licencji DB2
Instalacja w środowisku UNIX
• Instalacja tekstowa nie tworzy instancji,
instancję należy tworzyć ręcznie
– db2_install DB2.ESE
• Na platformach Linux/Unix należy się logować
jako root i zamontować CD-ROM następnie
uruchomić program db2setup
• Na platformach SOLARIS, AIX 5 L należy
kopiować spakowane oprogramowanie na
system plików następnie go instalować
– zcat ese.tar.Z |tar –xvf -;./ese/db2setup
Instalacja w środowisku UNIX
• Tworzenie grup:
– db2idam1, dasadm1, db2fadm1
• Tworzenie użytkowników:
– db2inst1, db2fenc1, dasusr1
• Tworzenie instancji:
– db2inst1
• Tworzenie serwera administracyjnego:
– dasusr1
Tworzenie instancji
• Każda instancja musi mieć właściciela (tu db2inst1),
który musi mieć taką samą nazwę jak instancja.
• Instalacja graficzna tworzy wszystkie wymagane
użytkownicy
• Dodatkowy użytkownik jest wymagany do
uruchamiania zewnętrznych procedur i funkcji bazy
danych (tu db2fenc1)
• Instancję tworzymy jako root: (ww. użytkownicy
muszą istnieć)
• cd /usr/opt/db2_08_01/instance
• ./db2icrt –a SERVER –s ESE –u db2fenc1 db2inst1
• W systemie Windows: db2icrt instance_name
Instancje c.d.
• Tworzenie instancji 64 bitowej (AIX 5L, HPUX, Solaris)
– db2icrt –w 64 –u db2fenc1 my64inst
• Tworzenie instancji klienta
– Jest to instancja ograniczona (np. brak
możliwości tworzenia bazy danych)
– db2icrt –s CLIENT myclinst
– Wymaga uprzedniego tworzenia użytkownika
myclinst
Instancje – dodatkowe komendy
• Usuwanie instancji – zerwanie wszystkich połączeń
do BD i zatrzymuje instację
– db2idrop instance_name
• Lista utworzonych instancji
– db2ilist
• Migracja instancji – ma miejsce w przypadku
przejścia do nowej wersji DB2 UDB lub przejścia z
32 na 64 bitowe instancje.
– db2imigr instance_name
• Aktualizacja instancji – ma miejsce w przypadku
pojawienia się poprawek do aktualnych wersji DB2
(fix patches)
– db2iupdt instance_name
Start instancji
• Automatyczny start instancji razem z
systemem operacyjnym
– db2iauto on
• W przypadku ręcznego startu instancji
– db2start
– ps –ef => db2sysc
• W przypadku konieczności połączenia się do
instancji jako jedynego użytkownika
(administrator w trybie
jednoużytkownikowym)
– db2start admin mode user userId
Zatrzymanie instancji
• db2stop
– Zatrzymuje instancję. Jeśli w instancji jest baza
danych aktywna nie uda się zatrzymać instancję
• db2stop force
– Wymusza zatrzymania instancji.
Obsługa instancji
• Jedna instancja może zarządzać wieloma
bazami danych
• Instancję można usuwać i powtórnie tworzyć
bez destruktywnego wpływu na bazę danych
• W katalogu instancji tworzone są linki do
binariów oraz odpowiednie pliki
konfiguracyjne, na komunikaty itp.
• Uruchomienie / zatrzymanie instancji
– db2start / db2stop lub db2stop force
• Instancja ma własny plik konfiguracyjny
– db2 get dbm cfg
– db2 update dbm cfg using parametr wartość
Obsługa instancji
• Zdalna instancja może być skatalogowana lokalnie:
– db2 catalog tcpip node nazw_węzła remote
zdalny_serwer server 50000
• Do instancji można się połączyć
– db2attach to nazwa_węzła
• Zmiana online parametrów instancji wymaga
podłączenia
• Przywrócenie domyślnych parametrów instancji
– db2 reset dbm cfg
• Jak inni użytkownicy mogą pracować z instancją
db2inst1
– . INSTHOME/sqllib/db2profile
Tworzenie serwera administracyjnego
• Serwer administracyjny nie jest wymagany do
pracy z bazą
• Jest potrzebny do zdalnej administracji z
wykorzystaniem narzędzi graficznych,
harmonogramowania zadań itp.
• Serwer administracyjny wymaga utworzenia
użytkownika (podobnie jak w przypadku
instancji)
• Mając już użytkownik dausr1 tworzymy jako
root:
– cd /usr/opt/db2_08_01/instance/dascrt –u dasusr1
Automatyczny start instancji i DAS
• Automatyczne startowanie instancji
razem z systemem operacyjnym:
– db2iauto on <instance_name>
• Automatyczne startowanie serwera
administracyjnego:
– dasauto on
Obsługa serwera administracyjnego
• db2admin start – uruchamia DAS (Database
Administration Server)
• db2admin stop – zatrzymuje DAS
• dascrt – tworzy DAS w systemach UNIX/LINUX
• dasdrop – usuwa DAS w systemach UNIX/LINUX
• db2admin create – tworzy DAS w systmie Windows
• db2admin drop – usuwa DAS w systemie Windows
• get admin cfg – Wyświetla plik konfiguracyjny DAS
• reset admin cfg – Przywraca parametry domyślne w
pliku konfiguracyjnym DAS
Konfiguracja środowiska DB2
• Polega na ustawieniu
–
–
–
–
Rejestr profili DB2
Zmiennych środowiskowych systemu operacyjnego
Parametrów konfiguracji DB2 Database Manager
Parametrów konfiguracyjnych bazy danych DB2
Serwer
Zmienne środowiskowe systemu operacyjnego
Instancja DB2
Baza danych
Paramery
konfiguracji
Database
Manager
Rejestr
profili DB2
Parametry
konfiguracji
bazy danych
Rejestr profili DB2
• Specyficzne zmienne dotyczące zarządzania,
konfiguracją i wydajnością systemu DB2
• Po wprowadzeniu zmian wartości tych zmiennych
należy ponownie inicjować instancję
– db2set –lr : wyświetla wartości wszystkich zmiennych
– db2set registry_variable=value
• np.db2set DB2COMM=TCPIP,APPC
– db2set –all
[e] DB2PATH=C:\SQLLIB
[e] ustawienia bieżącej sesji
[i] DB2INSTPROF=C:\SQLLIB
[u] ustawienia profili użytkownika
[i] DB2COMM=TCPIP,APPC
[n] ustawienia profili węzła
[g] DB2SYSTEM=DB2NTSERV
[i] ustawienia profili instancji
[g] DB2PATH=C:\SQLLIB
[g] ustawienia profili globalnych
[g] DB2ADMINSERVER=DB2DAS00
Zmienne środowiskowe
• Dla systemu Windows
– set DBINSTANCE=PROD
• Dla systemu Uinux C shell
– setenv DB2INSTANCE PROD
• Dla systemu Uinux Korn shell
– export DB2INSTANCE=PROD
• db2 get instance : wyświetla bieżącą instancję
– The current database manager instance is: DB2
Parametry konfiguracji
• Jest możliwość konfiguracji parametrów instancji i bazy danych w celu
nastrojenie działania DB2
• Wartość tych parametrów można oglądać za pomocą DB2 Control
Center lub za pomocą komend DB2
• db2 get database manager configuration
• db2 get database configuration for database_name
Zmiana parametrów konfiguracji
• db2 update database manager configuration using parameter
new_value
• db2 update database configuration for database_name using parameter
new_value
Zdalne połączenie z bazą
• Do połączenia się z bazą DB2 można
wykorzystać różne protokoły sieciowe
– TCP/IP, APPC, NetBIOS, NPIPE
• Przygotowanie serwera
– Ustawienie odpowiednich wartości
zmiennych profili
– Ustawienie odpowiednich portów
Przygotowanie serwera
• Ustawić wartość zmiennej DB2COMM
– db2set DB2COMM=TCPIP,NETBIOS
• Ustawić wartość portu komunikacyjnego dla
UNIX dodać linię w pliku /etc/services
– db2icdb2 50000/tcp
• Aktualizować plik konfiguracyjny bazy
– db2 update database manager configuration using
svcename db2icdb2
Tworzenie bazy danych
• Podczas tworzenia bazy danych system wykonuje
następujące czynności:
– Ustawia katalog tabel systemowych wykorzystanych przez
bazę danych
– Przydzielany jest plik logów odtwarzania
– Tworzony jest plik konfiguracyjny z wartościami
domyślnymi
• Komenda create database tworzy 3 domyślne
tabele:
– SYSCATSPACE: przestrzeń tablicowa katalogu
systemowego – nie może być usuwana
– TEMPSPACE1: systemowe tabele tymczasowe
– USERSPACE1: przestrzeń tablicowa obiektów
tworzonych przez użytkownika
Katalogi systemowe
• Każdej bazie danych towarzyszy zbiór tabel
systemowych tworzonych i utrzymanych przez
SZRBD.
• Tabele przechowują informacje dot.
– definicje obiektów bazy danych (tabele, widoki,
indeksy...)
– zasady bezpieczeństwa i dostępu do tych obiektów
przez poszczególnych użytkowników
• Tabele te są przechowywane w przestrzeni
tablicowej SYSCATSPACE
Struktura katalogu systemowego
• Komenda create database pozwala określić
miejsce tworzenia bazy w systemie (w
zależności od systemu operacyjnego)
• Jeśli nie określa się dysku ani katalogu baza
zostaje stworzona w katalogu określonym
wartością parametru DFTDBPATH
• Jeśli wartość parametru nie jest określona
baza tworzona jest w katalogu bieżącym
• Komenda create database tworzy następujące
drzewo katalogowe:
Drzewo katalogowe
Dysk/katalog
Parametr komendy CREATE DATABASE
Nazwa właściciela instancji DB2
Nazwa instancji
Nr partycji bazy danych (0 dla bazy nie partycjonowaej)
NODE0000
SQL00001
ID bazy – od 1 inkrementowany co 1dla kolejnych baz
SQLOGDIR
Domyślny katalog logów dla bazy
SQLT00000.0
Katalog przestrzeni tablicowej SYSCATSPACE
SQLT00001.0
Katalog przestrzeni tablicowej tymczasowej
TEMPSPACE
SQLT00002.0
Katalog przestrzeni tablicowej użytkownika
USERSPACE
• Podkatalog SQLXXXXX jest tworzony dla każdej
stworzonej bazy danych(np. mamy 2 bazy MYDB i
SAMPLE stworzonych w tym samym katalogu wtedy
mamy dwa podkatalogi: SQL00001 i SQL00002
Lista tworzonych baz danych
• Wykonanie komendy: list database directory on c:
wygeneruje następujący wynik:
Database 1 entry:
Database alias
=MYDB
Database name
=MYDB
Database directory
=SQL00001
Database release level
=a.00
Comment
=
Directory entry type
=HOME
Catalog database partition number =0
Database 2 entry:
Database alias
=SAMPLE
Database name
=SAMPLE
Database directory
=SQL00002
Database release level
=a.00
Comment
=
Directory entry type
=HOME
Catalog database partition number =0
Tworzenie bazy – przykłady
• Linux/Unix
– create databse sample on /database
Tworzy następujące katalogi (nazwa instancji
dbinst):
– /database/dbinst/NODE0000/sqldbdir
– /database/dbinst/NODE0000/SQL0001
• Windows
– Create database sample on D:
Tworzy następujące katalogi:
– D:\dbinst\NODE0000\sqldbdir
– D:\dbinst\NODE0000\SQL00001