postgresql 7.2. ćwiczenia praktyczne full scan.pdf

(6365 KB) Pobierz
4
PostgreSQL 7.2. Ćwiczenia praktyczne
Pobieranie danych .................................................................................................................. 85
Wybieranie danych z wielu tabel ........................................................................................... 93
Grupowanie danych ............................................................................................................... 96
Przetwarzanie transakcyjne .......................................................................................100
Rozdział 5. Zapytania zło one.........................................................................................................................103
Podzapytania .............................................................................................................106
Rozdział 6. Udostępnianie danych...............................................................................................................115
ODBC........................................................................................................................115
Microsoft Access.......................................................................................................116
Microsoft Excel .........................................................................................................123
Rozdział 7. Mo liwości systemu PostgreSQL ..........................................................................................127
Po co tworzyć własne procedury składowane, funkcje i wyzwalacze? ....................133
Rozdział 8. Zarządzanie PostgreSQL-em z poziomu systemu Windows.........................................139
Podczas uruchamiania
SZBD PostgreSQL
odczytuje zawartość plików konfiguracyjnych
znajdujących się w katalogu
/usr/local/pgsql/data/postgresql.conf
oraz
pg_hba.conf.
Naj-
prostszą i najbardziej uniwersalną metodą konfiguracji środowiska systemu
Postgres
jest
edycja tych plików.
Niektóre opcje mogą zostać ustawione poprzez połączenie się z działającą bazą danych i wykonanie
instrukcji
SQL
5'6
QRELC YCTVQ è
.
Umo liwienie dostępu klientom zdalnym do baz danych
Ćwiczenie 2.1.
Domyślnie
PostgreSQL
nie zezwoli u ytkownikom na zdalny dostęp do jakiejkolwiek
bazy danych. Aby nadać im prawa do nawiązania połączenia, nale y zmienić plik konfigu-
racyjny
pg_hba.conf.
Plik ten znajduje się w katalogu
/usr/local/pgsql/data
i zawiera
wpisy dotyczące udzielenia lub odebrania praw dla zdalnych u ytkowników do połączenia
się z bazą danych. Aby zezwolić na dostęp do wszystkich baz danych wszystkim kom-
puterom z sieci lokalnej bez konieczności podawania hasła:
1.
Za pomocą dowolnego edytora tekstu otwórz plik
pg_hba.conf.
Wiersze rozpoczynające się od znaku
PostgreSQL.
są komentarzami i nie wpływają na konfigurację
SZBD
30
2.
Dodaj dodatkowy wiersz na końcu pliku:
JQUV CNN VTWUV
PostgreSQL 7.2. Ćwiczenia praktyczne
3.
Zapisz plik.
4.
Zatrzymaj i ponownie uruchom proces
RQUVOCUVGT
.
5.
Od tej chwili, wszystkie komputery o adresach
IP
rozpoczynających się od
192.168.
będą mogły uzyskać dostęp, bez podawania hasła u ytkownika, do wszystkich baz
danych.
Uwierzytelnianie klientów za pomocą hasła
Ćwiczenie 2.2.
O ile połączenia klientów sieci lokalnej mogą być akceptowane bez konieczności uwierzy-
telniania u ytkownika, o tyle klienci sieci zewnętrznej powinni przy próbie połączenia się
z bazą danych podać prawidłową nazwę u ytkownika i hasło. W tym celu:
1.
Za pomocą dowolnego edytora tekstu otwórz plik
pg_hba.conf.
Programy systemu
UNIX
takie jak
Postgres
niepoprawnie interpretują znak końca wiersza plików
tekstowych utworzonych lub edytowanych za pomocą programów systemu
Windows,
takich jak
np.
Notatnik.
2.
Dodaj dodatkowy wiersz na końcu pliku:
JQUV CNN OF
3.
Zapisz plik.
4.
Zatrzymaj i ponownie uruchom proces
RQUVOCUVGT
.
5.
Od tej chwili, wszystkie komputery będą mogły uzyskać dostęp do wszystkich
baz danych, o ile zostanie podane prawidłowa nazwa u ytkownika i hasło. Hasła
u ytkowników są przechowywane w pliku
pg_pwd
znajdującym się w katalogu
/pgsql/data/global
w postaci zaszyfrowanej algorytmem
MD5.
Odrzucanie połączeń określonych klientów
Ćwiczenie 2.3.
Je eli chcemy uniemo liwić dostęp do wybranej bazy danych klientom o określonych ad-
resach
IP:
1.
Za pomocą dowolnego edytora tekstu otwórz plik
pg_hba.conf.
2.
Dodaj dodatkowy wiersz przed wierszem zezwalającym na połączenie ka demu
komputerowi:
JQUV
VGORNCVG
TGLGEV
3.
Zapisz plik.
Rozdział 2.
v
Administracja SZBD PostgreSQL
4.
Zatrzymaj i ponownie uruchom proces
RQUVOCUVGT
.
31
5.
Od tej chwili próby nawiązania połączenia z systemową bazą danych przez komputery
o adresach
IP 217.96.x.x
będą automatycznie odrzucane.
Listing 2.1.
Przykładowy plik pg_hba.conf
2WV [QWT CEVWCN EQPHKIWTCVKQP JGTG
6;2'
NQECN
JQUV
JQUV
JQUV
JQUV
&#6#$#5'
CNN
CNN
CNN
VGORNCVG
CNN
+2A#&&4'55
/#5-
#76*A6;2' #76*A#4)7/'06
VTWUV
VTWUV
VTWUV
TGLGEV
OF
Optymalizacja pracy SZBD PostgreSQL
Ćwiczenie 2.4.
Dane przechowywane w ka dej bazie danych nie są niezmienne — codziennie dodawane
są nowe rekordy, niektóre rekordy są zmieniane, a niektóre informacje usuwane.
W rezultacie, aby zapewnić wysoką wydajność
SZBD
nale y okresowo „oczyścić” bazę
danych, aby odzyskać wolne miejsca w bazie danych pozostałe po usuniętych rekordach
i aby zaktualizować statystyki
optymalizatora poleceń SQL
1
. W tym celu:
1.
Zaloguj się na konto u ytkownika
RQUVITGU
.
2.
Wydaj polecenie:
/WUT/NQECN/RIUSN/DKPXCEWWOFD
F
VGORNCVG
CPCN[\G XGTDQUG
3.
Je eli zostaną wyświetlone informacje podobne do pokazanych na rysunku 2.1,
a wykonanie polecenia zostało potwierdzone poprzez wyświetlenie tekstu
8#%77/
— statystyki wybranej bazy danych zostały odświe one.
4.
Wyświetlenie komunikatu
vacuumdb: vacuum failed
oznacza błąd, prawdopodobnie
spowodowany niemo liwością połączenia z wybraną bazą danych. Sprawdź, czy
proces
RQUVOCUVGT
jest uruchomiony, czy w katalogu baz danych znajduje się baza
o podanej nazwie i czy u ytkownik
RQUVITGU
jest administratorem tej bazy. Za pomocą
dodatkowych opcji polecenia
XCEWWOFD
mo esz określić:
v
nazwę lub adres
IP
serwera:
J
UGTYGT
,
v
port, na którym
SZBD
nasłuchuje połączeń klienckich:
R
RQTV
.
1
Optymalizator, na podstawie zgromadzonych statystyk bazy danych, decyduje o sposobie wykonania
instrukcji
SQL.
Zgłoś jeśli naruszono regulamin