Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00395 007888 10477445 na godz. na dobę w sumie
PostgreSQL 7.2. Ćwiczenia praktyczne - książka
PostgreSQL 7.2. Ćwiczenia praktyczne - książka
Autor: Liczba stron: 152
Wydawca: Helion Język publikacji: polski
ISBN: 83-7197-866-9 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> bazy danych >> postgresql - programowanie
Porównaj ceny (książka, ebook, audiobook).
Jeśli kiedykolwiek chciałeś uruchomić bazę danych PostreSQL, a nie wiedziałeś jak lub jeśli chciałeś stworzyć bazę za pomocą tego narzędzia, a ciągle wydaje ci się, że technologia ta przypomina 'czarną skrzynkę' -- powinieneś przeczytać tę książkę.

Autor, Marcin Szeliga -- wieloletni praktyk, twórca i administrator baz danych, certyfikowany inżynier Microsoft -- podjął się zadania trudnego. Postanowił w sposób przystępny opisać instalację oraz projektowanie bazy postgresowej. Wielka pasja, jaką dla niego są język SQL oraz bazy danych i umiejętność przekazywania informacji, nawet najbardziej zawiłych -- w prosty sposób, zaowocowały doskonałym podręcznikiem dla początkujących. Wykorzystaj szansę i naucz się:

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

IDZ DO IDZ DO PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ SPIS TRE(cid:140)CI SPIS TRE(cid:140)CI KATALOG KSI¥flEK KATALOG KSI¥flEK KATALOG ONLINE KATALOG ONLINE ZAM(cid:211)W DRUKOWANY KATALOG ZAM(cid:211)W DRUKOWANY KATALOG TW(cid:211)J KOSZYK TW(cid:211)J KOSZYK DODAJ DO KOSZYKA DODAJ DO KOSZYKA CENNIK I INFORMACJE CENNIK I INFORMACJE ZAM(cid:211)W INFORMACJE ZAM(cid:211)W INFORMACJE O NOWO(cid:140)CIACH O NOWO(cid:140)CIACH ZAM(cid:211)W CENNIK ZAM(cid:211)W CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥flEK ONLINE FRAGMENTY KSI¥flEK ONLINE Wydawnictwo Helion ul. Chopina 6 44-100 Gliwice tel. (32)230-98-63 e-mail: helion@helion.pl PostgreSQL 7.2. ˘wiczenia praktyczne Autor: Marcin Szeliga ISBN: 83-7197-866-9 Format: B5, stron: 150 Je(cid:156)li kiedykolwiek chcia‡e(cid:156) uruchomi(cid:230) bazŒ danych PostreSQL, a nie wiedzia‡e(cid:156) jak lub je(cid:156)li chcia‡e(cid:156) stworzy(cid:230) bazŒ za pomoc„ tego narzŒdzia, a ci„gle wydaje ci siŒ, ¿e technologia ta przypomina (cid:132)czarn„ skrzynkŒ(cid:148) (cid:151) powiniene(cid:156) przeczyta(cid:230) tŒ ksi„¿kŒ. Autor, Marcin Szeliga (cid:151) wieloletni praktyk, tw(cid:243)rca i administrator baz danych, certyfikowany in¿ynier Microsoft (cid:151) podj„‡ siŒ zadania trudnego. Postanowi‡ w spos(cid:243)b przystŒpny opisa(cid:230) instalacjŒ oraz projektowanie bazy postgresowej. Wielka pasja, jak„ dla niego s„ jŒzyk SQL oraz bazy danych i umiejŒtno(cid:156)(cid:230) przekazywania informacji, nawet najbardziej zawi‡ych (cid:151) w prosty spos(cid:243)b, zaowocowa‡y doskona‡ym podrŒcznikiem dla pocz„tkuj„cych. Wykorzystaj szansŒ i naucz siŒ: instalacji systemu PostgreSQL w (cid:156)rodowiskach Linux i Windows; niezbŒdnych czynno(cid:156)ci sk‡adaj„cych siŒ na codzienn„ pracŒ administratora baz danych; teorii relacyjnych baz danych. Zdobyte umiejŒtno(cid:156)ci zostan„ wykorzystane przy tworzeniu przyk‡adowej bazy danych; strukturalnego jŒzyka zapytaæ (cid:151) jŒzyka zarz„dzania wszystkimi relacyjnymi bazami danych; tworzenia zaawansowanych instrukcji jŒzyka SQL; metod zdalnego dostŒpu do bazy danych poprzez dobrze znane aplikacje dzia‡aj„ce w (cid:156)rodowisku Windows (cid:151) takie jak Microsoft Access czy Microsoft Excel; zarz„dzania PostgreSQL-em z poziomu systemu Windows. Wstęp ...................................................z...................................................z................................................5 Czym jest PostgreSQL? ...................................................P.............................................5 Krótka historia PostgreSQL ...................................................s..................................................6 Licencje Open Source ...................................................s...................................................s........ 7 Organizacja książki ...................................................P...................................................P.7 Konwencje i oznaczenia...................................................P.............................................8 Rozdział 1. Instalacja i konfiguracja ...................................................z...........................................................9 Instalacja PostgreSQL-a w Windows...................................................P.........................9 Instalacja PostgreSQL-a z pakietów binarnych systemu Linux..................................19 Instalacja PostgreSQL z kodu źródłowego ...................................................P..............21 Konfiguracja SZBD PostgreSQL w środowisku UNIX .............................................23 Rozdział 2. Administracja SZBD PostgreSQL...................................................z.......................................... 29 Konfiguracja środowiska SZBD PostgreSQL...................................................P..........29 Zarządzanie bazami danych ...................................................P.....................................34 Program psql ...................................................P...................................................P.........44 Rozdział 3. Projektowanie baz danych...................................................z......................................................51 Diagramy związków E/R ...................................................P.........................................51 Grupowanie danych w tabelach ...................................................s.......................................... 56 Tworzenie tabel ...................................................P...................................................P.....57 Warunki integralności ...................................................s...................................................s...... 60 Indeksy ...................................................P...................................................P..................65 Rozdział 4. Modyfikowanie danych...................................................z............................................................69 Język definiowania danych ...................................................P......................................69 Zmiana definicji tabel ...................................................s...................................................s...... 71 Język modyfikowania danych ...................................................P..................................77 Dodawanie danych ...................................................s...................................................s........... 77 Modyfikowanie danych...................................................s...................................................s.... 82 4 PostgreSQL 7.2. Ćwiczenia praktyczne Pobieranie danych ...................................................s...................................................s............ 85 Wybieranie danych z wielu tabel ...................................................s........................................ 93 Grupowanie danych ...................................................s...................................................s......... 96 Przetwarzanie transakcyjne ...................................................P....................................100 Rozdział 5. Zapytania złożone...................................................z......................................................................103 Podzapytania ...................................................P...................................................P.......106 Rozdział 6. Udostępnianie danych...................................................z............................................................115 ODBC ...................................................P...................................................P..................115 Microsoft Access...................................................P...................................................P.116 Microsoft Excel ...................................................P...................................................P...123 Rozdział 7. Możliwości systemu PostgreSQL ...................................................z.......................................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 6QRELCYCTVQħè. 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 podawaniar hasła: 1. Za pomocą dowolnego edytora tekstu otwórz plik pg_hba.conf. Wiersze rozpoczynające się od znaku  są komentarzami i nie wpływają na konfigurację SZBD PostgreSQL. 30 PostgreSQL 7.2. Ćwiczenia praktyczne 2. Dodaj dodatkowy wiersz na końcu pliku: JQUVCNNVTWUV 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żytkownrika, 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 harsł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: JQUVCNNOF 3. Zapisz plik. 4. Zatrzymaj i ponownie uruchom proces RQUVOCUVGT. 5. Od tej chwili, wszystkie komputery będą mogły uzyskać rdostęp do wszystkich baz danych, o ile zostanie podane prawidłowa nazwa użyrtkownika 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 rna połączenie każdemu komputerowi: JQUVVGORNCVGTGLGEV 3. Zapisz plik. Rozdział 2. v Administracja SZBD PostgreSQL 31 4. Zatrzymaj i ponownie uruchom proces RQUVOCUVGT. 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[QWTCEVWCNEQPHKIWTCVKQPJGTG   6;2  #6#$#5 +2A# 4 55/#5-#76*A6;2 C#76*A#4)7/ 06 NQECNCNN VTWUV JQUVCNN VTWUV JQUVCNN VTWUV TGLGEV JQUVVGORNCVG JQUVCNN  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 nirektó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ń SQL1. W tym celu: 1. Zaloguj się na konto użytkownika RQUVITGU. 2. Wydaj polecenie: /WUT/NQECN/RIUSN/DKPXCEWWOFDF VGORNCVG CPCN[GXGTDQUG 3. Jeżeli zostaną wyświetlone informacje podobne do pokarzanych na rysunku 2.1, a wykonanie polecenia zostało potwierdzone poprzez rwyś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ą dranych. Sprawdź, czy procesRQUVOCUVGTjest uruchomiony, czy w katalogu baz danych znajdujer 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: JUGTYGT, v port, na którym SZBD nasłuchuje połączeń klienckich: R RQTV. 1 Optymalizator, na podstawie zgromadzonych statystyk bpazy danych, decyduje o sposobie wykonania instrukcji SQL. PostgreSQL 7.2. Ćwiczenia praktyczne 32 Rysunek 2.1. Fragment informacji wyświetlanych podczas aktualizacji statystyk Monitorowanie pracy serwera Ćwiczenie 2.5. Z reguły warto zapisywać informacje o operacjach przeprowadzanych przez poszczegól- nych użytkowników oraz informacje diagnostyczne opisujące pracę SZBD PostgreSQL. Tak jak wiele innych opcji, tą również możemy ustawić modyfikując zawartość pliku postgresql.conf. 1. Za pomocą dowolnego edytora tekstu otwórz plik postgresql.conf. 2. Znajdź parametr FGDWIANGXGN(domyślną wartością jest  — w dzienniku zapisywane są tylko podstawowe dane opisujące pracę serwera). 3. Maksymalny poziom szczegółowości zapisywanych danychr osiągniemy zmieniając wartość parametru FGDWIANGXGN na : FGDWIANGXGN 4. Ustawiając wartość parametru NQIAEQPPGEVKQPU na ;GU dodamy do dziennika informacje o każdej udanej próbie zalogowania klientra do serwera: NQIAEQPPGEVKQPU[GU 5. Zmieniając wartość parametru NQIAVKOGUVCOR na ;GU spowodujemy, że każda informacja zapisana w dzienniku zdarzeń będzie uzuperłniona o znacznik czasu informujący o dokładnym czasie wystąpienia zdarzenira: NQIAVKOGUVCOR[GU 6. Zapisz plik. 7. Zatrzymaj i ponownie uruchom proces RQUVOCUVGT. Listing 2.2. Fragment pliku postgresql.conf QPPGEVKQP2CTCOGVGTU    VERKRAUQEMGVHCNUG UUNHCNUG OCZAEQPPGEVKQPU Rozdział 2. v Administracja SZBD PostgreSQL 33 RQTV JQUVPCOGANQQMWRHCNUG UJQYAUQWTEGARQTVHCNUG WPKZAUQEMGVAFKTGEVQT[ WPKZAUQEMGVAITQWR WPKZAUQEMGVARGTOKUUKQPU XKTVWCNAJQUV MTDAUGTXGTAMG[HKNG 5JCTGF/GOQT[5KG    UJCTGFADWHHGTU OCZAEQPPGEVKQPUOKP OCZAHUOATGNCVKQPUOKPHUOKUHTGGURCEGOCR OCZAHUOARCIGUOKPHUOKUHTGGURCEGOCR OCZANQEMUARGTAVTCPUCEVKQPOKP YCNADWHHGTUOKP 0QPUJCTGF/GOQT[5KGU    UQTVAOGOOKP XCEWWOAOGOOKP Przydzielanie zasobów systemowych Ćwiczenie 2.6. W przypadku serwera, który będzie obsługiwał wiele jednoczesnych połączeń lub który będzie nasłuchiwał na nietypowym porcie, należy zmienić domyślne ustawienia SZBD PostgreSQL. W tym celu: 1. Za pomocą dowolnego edytora tekstu otwórz plik postgresql.conf. 2. Znajdź parametr RQTV i zmień domyślną wartość na numer portu, który będzire wykorzystywany do nawiązywania połączenia klientów rz serwerem: RQTV 3. Ustaw wartość parametru OCZAEQPPGEVKQPU — serwer będzie zezwalał na nawiązanie maksymalnie 50 jednoczesnych połączeń: OCZAEQPPGEVKQPU 4. Ustawiając wartość parametru UJCTGFADWHHGT określamy, ile buforów pamięci operacyjnej będzie zarezerwowane dla SZBD Postgres (domyślna wielkość bufora to 8 192 bajty): UJCTGFADWHHGT 5. Przydziel ilość pamięci operacyjnej (w kilobajtach) wrykorzystywanej m.in. przy sortowaniu danych przez system Postgres: UQTVAOGO 34 PostgreSQL 7.2. Ćwiczenia praktyczne Niektóre skomplikowane zapytania lub operacje sortowania mogą być wykonywane równolegle. W takim przypadku każdemu procesowi zostanie przydzielona podana ilość pamięci operacyjnej. W praktyce całkowita liczba przydzielonej pamięci jest wielokrotnością wartości parametru UQTVAOGO. 6. Zapisz plik. 7. Zatrzymaj i ponownie uruchom proces postmaster. Po uruchomieniu i skonfigurowaniu środowiska Systemu zarządzania bazami danych możemy utworzyć testową bazę danych. Chociaż ćwiczenia znajdujące się w kolejnym rozdziale przedstawiają proces samodzielnego zaprojektowania bazy danych katalog, to już teraz możemy utworzyć swoją pierwszą bazę danych. Wykonując kolejne ćwiczenia Czytelnik pozna nie tylko metody tworzenia i usuwania poszczególnych baz danych, ale również ograniczania dostępu do obiektów baz danych proszczególnym użytkownikom. Tworzenie bazy danych Ćwiczenie 2.7. Jednym z etapów instalacji i konfiguracji SZBD PostgreSQL było utworzenie systemowej bazy danych template1. W tej bazie przechowywane są informacje niezbędne do zarządza- nia bazami danych użytkownika. SZBD PostgreSQL, tak jak zdecydowana większość innych systemów zarządzania bazami danych, umożliwia uruchomienie na pojedynczym serwerze dowolnej liczby baz danych. Książka opisuje wyłącznie logiczną strukturę baz danych SZBD PostgreSQL. Sposób, w jaki poszczególne obiekty i dane przechowywane są na dysku twardym został opisany w książce „Bazy danych i PostgreSQL. Od podstaw”. Aby utworzyć nową bazę danych z poziomu systemu operarcyjnego: 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto użytkownika RQUVITGU(W przypadku zainstalowania programu w środowisku MicrosoftWindowsnależy zalogować się do systemu jako użytkownik RQUVITGU lub zmodyfikować opcję –NQIKP w pliku uruchamiającym powłokę Cygwin Bash c:cygwincygwin.bat). UWŌRQUVITGU 3. Utwórz bazę danych VGUV(rysunek 2.2): WUTNQECNRIUSNDKPETGCVGFDVGUV 4. Po chwili zostanie wyświetlony komunikat informującry o pomyślnym utworzeniu bazy danych (rysunek 2.4): 4 #6  #6#$#5 Rozdział 2. v Administracja SZBD PostgreSQL 35 5. Sprawdź, czy możesz podłączyć się do nowo utworzonej barzy za pomocą narzędzia RUSN (rysunek 2.2): WUTNQECNRIUSNDKPRUSNVGUV Rysunek 2.2. Utworzona baza danych nie zawiera żadnych obiektów Alternatywną metodą utworzenia bazy danych jest: 1. Zalogowanie do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonanie instrukcji SQL 4 #6 #6#$#5 VGUV 3. Po chwili zostanie wyświetlony komunikat informującry o pomyślnym utworzeniu bazy danych (rysunek 2.3): 4 #6  #6#$#5 4. Sprawdź, czy możesz podłączyć się do nowo utworzonej barzy: EVGUV Rysunek 2.3. Do przełączania się pomiędzy bazami danych służy polecenie c nazwa bazy danych Tworzenie kopii zapasowej Ćwiczenie 2.8. Tworzenie kopii zapasowych jest jednym z podstawowych obowiązków administratora bazy danych. Niezależnie od tego, ile wydano pieniędzy na niezawodny sprzęt, zawsze istnieje możliwość jego awarii i utraty danych. Ponadto, niedoświadczony użytkownik może usunąć lub zmodyfikować wszystkie dane przechowywane w pewnej tabeli niezgodnie ze 36 PostgreSQL 7.2. Ćwiczenia praktyczne swoimi zamierzeniami. Wreszcie, każdy nawet najlepiej zabezpieczony system po pod- łączaniu do internetu może stać się przedmiotem udanego ataku pirata komputerowego. W każdej z tych sytuacji najszybszą (a czasami jedyną) metodą ponownego uruchomienia bazy danych jest jej odtworzenie z aktualnej kopii rzapasowej. SZBD PostreSQL umożliwia tworzenie logicznych kopii zapasowych baz danych bez konieczności wyłączania systemu. Służą do tego polecenria RIAFWOR oraz RIAFWORCNN. Najprostszym sposobem wykonania kopii zapasowej bazy danych jest wydanie polecenia RIAFWOR: 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto użytkownika RQUVITGU: UWŌRQUVITGU 3. Utwórz kopię zapasową wybranej bazy danych: RIAFWORVGUV VGUVDCM 4. W katalogu domowym użytkownika, który wykonał kopię barzy danych utworzony został plik VGUV.DCM. Działanie narzędzia RIAFWOR polega na utworzeniu skryptu złożonego z poleceń SQL oraz we- wnętrznych poleceń programu RUSN, które po wykonaniu odtworzą całość bazy danych. Skrypt wynikowy jest zapisany w postaci tekstowej. Oprócz wykonywania kopii bezpieczeństwa baz danych użytkownika należy zabezpieczyć się na wypadek uszkodzenia systemowej bazy danych template1. Za pomocą polecenia RIAFWORCNN można wykonać kopię zapasową wszystkich baz danych w całej instalacji (włącznie z bazą systemową i tabelami systemowymi). Operację tę może przeprowadzić jedynie administrator SZBD PostgreSQL (a nie administrator poszczególnych baz danych): 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto użytkownika RQUVITGU: UWŌRQUVITGU 3. Utwórz kopię wszystkich baz danych utworzonych na serrwerze: RIAFWORCNN UGTYGTDCM 4. Zostaną wyświetlone informacje potwierdzające wykonranie kopii wszystkich baz danych, włącznie z bazą systemową: EQPPGEVGFVQVGORNCVG FWORKPIFCVCDCUGőVGORNCVGŒ FWORKPIFCVCDCUGőVGUVŒ FWORKPIFCVCDCUGőWPCŒ 5. W katalogu domowym użytkownika, który wykonał kopię barzy danych utworzony został plik UGTYGT.DCM. Tylko za pomocą narzędzia RIAFWORCNN wykonywana jest kopia metadanych SZBD, takich jak np. dane o użytkownikach. Rozdział 2. v Administracja SZBD PostgreSQL 37 Listing 2.3. Skrypt kopii zapasowej serwera zawiera definicje użytktowników i tabel systemowych  RIAFWORCNN   EQPPGEVVGORNCVG . 6 (41/RIAUJCFQY9* 4 WUGU[UKF  5 . 6FCVFDC(41/RIAFCVCDCUG9* 4 FCVPCOG  VGORNCVG  4 #6 75 4UGN9+6*5;5+  4 #6 75 4RQUVITGU9+6*5;5+ 2#55914  RQUVITGU     61  PVT[+  1+   0COGRICASWGTKGU6[RG6#$. 1YPGT#FOKPKUVTCVQT  4 #6 6#$. RICASWGTKGU SWGT[PCOGEJCTCEVGTXCT[KPI   SWGT[V[RGEJCTCEVGT   SWGT[EQOOCPFVGZV SWGT[VCDNGUVGZV SWGT[NKPMUVGZV SWGT[TGUWNVUVGZV SWGT[EQOOGPVUVGZV     Odtwarzanie bazy danych z kopii zapasowej Ćwiczenie 2.9. Skoro skrypt kopii zapasowej zawiera polecenia tworzenia obiektów baz danych i wypeł- niania ich danymi, odtwarzanie bazy sprowadza się dor jego wykonania. Domyślnie, w skrypcie nie zostaje zapisana instrukcja tworząca bazę danych. Dlatego przed przywróceniem bazy danych na innym serwerze musimy ręcznie utworzyć pustą bazę danych. Nazwa nowo utworzonej bazy danych nie musi odpowiadpać nazwie źródłowej bazy danych. 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto użytkownika RQUVITGU: UWŌRQUVITGU 3. Utwórz bazę danych, w której zostaną umieszczone daner z kopii zapasowej: ETGCVGFDEJYKNQYC 4. Uruchom skrypt kopii zapasowej: RUSNŌHJQOGRQUVITGUVGUVDCMEJYKNQYC 38 PostgreSQL 7.2. Ćwiczenia praktyczne Opcja ŌH powoduje, że program RUSN wykona instrukcje znajdujące się w pliku o podanej nazwie. Odtwarzanie kopii zapasowej całego serwera wymaga porłączenia z bazą danych template1. Ponieważ pełna kopia zapasowa zawiera instrukcje SQL tworzące wszystkie bazy danych użytkowników, w tym przypadku nrie jest konieczne ręczne tworzenie pustych baz danych. 5. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 6. Zaloguj się na konto użytkownika RQUVITGU: UWŌRQUVITGU 7. Uruchom skrypt kopii zapasowej serwera: RUSNŌHJQOGRQUVITGUUGTYGTDCMVGORNCVG Usuwanie bazy danych Ćwiczenie 2.10. Czasami administrator musi usunąć całą bazę danych z serwera. Sytuacja taka może mieć miejsce w przypadku odtwarzania bazy danych z kopii zapasowej lub usuwania poprzedniej wersji modyfikowanej bazy danych. Aby usunąć wybrana brazę danych: Usunięcie bazy danych powoduje nieodwracalne utracenie wszystkich przechowywanych w niej danych. 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto użytkownika RQUVITGU: UWŌRQUVITGU 3. Usuń bazę danych EJYKNQYC: WUTNQECNRIUSNDKPFTQRFDEJYKNQYC 4. Na ekranie pojawi się komunikat informujący o pomyśrlnym usunięciu bazy danych: 412 #6#$#5 Tak jak w przypadku tworzenia bazy danych, możliwe jest jej usunięcie z poziomu ję- zyka SQL: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonaj instrukcję SQL 412 #6#$#5 EJYKNQYC. 3. Na ekranie pojawi się komunikat informujący o pomyśrlnym usunięciu bazy danych: 412 #6#$#5 Rozdział 2. v Administracja SZBD PostgreSQL 39 Tworzenie użytkowników Ćwiczenie 2.11. Po utworzeniu wzorcowej bazy danych template1 jedynym użytkownikiem, który może nawiązać połączenie z jakąkolwiek bazą jest użytkownik RQUVITGU. Ponieważ użytkownik ten ma nieograniczone prawa modyfikowania zarówno danych, jak i obiektów baz danych, użytkownicy nie powinni mieć możliwość łączenia się zr serwerem za pomocą tego konta. Dane o użytkownikach są zapisane w tabeli systemowej RIAWUGT. Wybierając wszystkie wiersze z tabeli RIAWUGT, możemy wyświetlić informacje o wszystkich użytkownirkach: 5 . 6 (41/2)A75 4 WUGPCOG^WUGU[UKF^WUGETGCVGFD^WUGVTCEG^WUGUWRGT^WUGECVWRF^RCUUYF^XCNWPVKN         #FOKPKUVTCVQT^^V^V^1V^V^ ^ UGN^^H^H^1^H^ ^ RQUVITGU^^H^H^H1^H^ ^  TQYU Nazwa użytkownika SZBD PostgreSQL nie musi odpowiadać nazwie logowania danego użytkownika do systemu operacyjnego. Jednak większość narzędzi (np. program RUSN) za domyślną nazwę użytkownika bazy danych przyjmują nazwę użytkownika, który uruchamia program. Aby utworzyć nowego użytkownika: 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto administratora SZBD RQUVITGU: UWŌRQUVITGU 3. Dodaj nowego użytkownika: WUTNQECNRIUSNDKPETGCVGWUGTUGN 4. Określ, czy nowy użytkownik będzie miał prawo tworzenira nowych baz danych i nowych użytkowników (rysunek 2.4). Rysunek 2.4. Wykonanie instrukcji programu psql du wyświetli listę wszystkich użytkowników 40 PostgreSQL 7.2. Ćwiczenia praktyczne 5. Sprawdź, czy możesz zalogować się do jakiejkolwiek bazy danych na nowo utworzone konto użytkownika: RUSNŌ7UGNVGUV Możemy również tworzyć nowych użytkowników z poziomu jręzyka SQL. W tym celu: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonaj instrukcję SQL: 4 #6 75 4 OCNKPKCM 3. Po chwili zostanie wyświetlony komunikat informującry o pomyślnym utworzeniu nowego konta użytkownika: 4 #6 75 4 Modyfikowanie konta użytkowników Ćwiczenie 2.12. Konto każdego użytkownika powinno być chronione hasłem. Administrator może określić hasło użytkownika podczas tworzenia jego konta, może również nadać lub zmienić ist- niejące hasło w dowolnym momencie po utworzeniu konrta użytkownika. Aby zmienić hasło istniejącego użytkownika: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonaj instrukcję SQL: #.6 475 4OCNKPKCM 9+6*2#55914  MCAR@VCP  3. Po chwili zostanie wyświetlony komunikat potwierdzarjący zmianę hasła użytkownika: #.6 475 4 Instrukcja #.6 4 75 4 pozwala również określić, czy dany użytkownik będzie rmiał nadane prawo do tworzenia własnych baz danych oraz dro dodawania nowych użytkowników. Dodatkowo możemy określić, po jakim czasrie konto zostanie automatycznie zablokowane. Pełna składnia instrukcji rwygląda następująco: #.6 475 4PCYCAWľ[VMQYPKMC =9+6*2#55914  JCUđQ ? = 4 #6 $^01 4 #6 $?= 4 #6 75 4^01 4 #6 75 4? =8#.+ 706+. ECUAYCľPQħEK ? Na przykład, aby uniemożliwić użytkownikowi OCNKPKCM łączenie się z serwerem po pierw- szym maja 2002 roku, należy wykonać instrukcję: #.6 475 4OCNKPKCM 8#.+ 706+.   Rozdział 2. v Administracja SZBD PostgreSQL 41 Usuwanie użytkowników Ćwiczenie 2.13. Konta użytkowników, którym należy odebrać prawo do łączenia się z bazami serwera Postgres powinny zostać usunięte z systemu. Ta operacja również może zostać przeprowa- dzona zarówno z poziomu systemu operacyjnego jaki i języka SQL. Aby usunąć konto użytkownika: 1. Upewnij się, że SZBD PostgreSQL został pomyślnie uruchomiony. 2. Zaloguj się na konto administratora SZBD RQUVITGU: UWRQUVITGU 3. Usuń konto użytkownika: WUTNQECNRIUSNDKPFTQRWUGTOCNKPKCM 4. Po chwili zostanie wyświetlony komunikat potwierdzający usunięcie konta użytkownika: 41275 4 Natomiast jeżeli jesteśmy już zalogowani do systemu Postgres i chcemy usunąć konto użytkownika: 1. Wykonaj instrukcję: 41275 4OCNKPKCM 2. Jeżeli został wyświetlony komunikat 4414 41275 4RGTOKUUKQPFGPKGF, oznacza to, że użytkownik aktualnie podłączony do bazyr danych nie jest jej administratorem i nie może usuwać kont innych użytkorwników. Wyloguj się z systemu Postgres i zaloguj na konto administratoraSZBDPostgreSQL. 3. Pomyślne wykonanie instrukcji zostanie potwierdzoner komunikatem: 41275 4 Tworzenie grupy użytkowników Ćwiczenie 2.14. Grupy użytkowników tworzone są po to, aby ułatwić i uprościć administrowanie kontami wielu użytkowników. Zamiast wielokrotnie nadawać te same uprawnienie do poszczególnych obiektów każdemu z użytkowników, administrator może utworzyć grupę użytkowników, dopisać do listy jej członków wybrane konta i nadać rodpowiednie uprawnienie grupie. Uprawnienia nadane grupie zostają niejawnie nadane wszystkim jej członkom. Jeżeli użytkownik jest członkiem kilku grup, jego efektywne uprawnienia będą sumą uprawnień nadanych każdej grupie. Aby utworzyć grupę E[VGNPKE[: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 42 PostgreSQL 7.2. Ćwiczenia praktyczne 2. Wykonaj instrukcję SQL: 4 #6 )4172E[VGNPKE[ 9+6*75 4UGN 3. Po chwili zostanie wyświetlony komunikat potwierdzarjący utworzenie grupy użytkowników: 4 #6 )4172 Do tworzenia grupy użytkowników służy instrukcja SQL 4 #6 )4172. Pełna składnia instrukcji wygląda następująco: 4 #6 )4172PCYC =9+6* =5;5+ IKF? =75 4PCYCWľ[VMQYPKMC=??? Dodawanie i usuwanie kont użytkowników z grupy Ćwiczenie 2.15. Uważni Czytelnicy zauważyli już, że instrukcje języka SQL dotyczące zarządzania kontami użytkowników i grupami użytkowników są bardzo podobne. Tak jak modyfikowaliśmy właściwości poszczególnych kont za pomocą instrukcji #.6 4 75 4, tak do modyfiko- wania właściwości grup użytkowników wykorzystamy insrtrukcje #.6 4 )4172. Aby dodać do grupy E[VGNPKE[ konto użytkownika OCNKPKCM: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonaj instrukcję SQL: #.6 4)4172E[VGNPKE[ # 75 4RQUVITGU 3. Po chwili zostanie wyświetlony komunikat potwierdzarjący zmodyfikowanie grupy użytkowników (rysunek 2.5): #.6 4)4172 Rysunek 2.5. Wykonując polecenie h ALTER GROUP programu psql wyświetli kontekstowy plik pomocy Rozdział 2. v Administracja SZBD PostgreSQL 43 Nadawanie uprawnień Ćwiczenie 2.16. SZBD PostgreSQL steruje dostępem do obiektów baz danych poprzez wykorzystanie systemu uprawnień, które mogą być udzielane lub odbierane za pomocą poleceń SQL )4#06 i 4 81- . Administrator może nadać odpowiednie uprawnienia użytkownikowi (lub grupie użytkowników) do każdego z obiektów. Nadane uprawnienia określają, jakie ope- racje (np. odczytu danych) będą mogły zostać przeprowadzone przez wybranego użyt- kownika. Polecenie )4#06 ma następującą składnię: )4#06WRTCYPKGPKG=?10PCYCQDKGMVW=? 61]27$.+ ^)4172PCYCITWR[^PCYCWľ[VMQYPKMC_ Słowo kluczowe 27$.+ jest skrótem oznaczającym wszystkich użytkowników.p Dozwolone uprawnienia to: v 5 . 6— umożliwia odczytywanie wierszy. v +05 46— umożliwia tworzenie nowych wierszy. v . 6 — umożliwia usuwanie wierszy. v 72 #6 — umożliwia aktualizację istniejących wierszy. v 47. — umożliwia tworzenie reguł dla tabeli lub perspektywyr. v #..— nadaje wszystkie wyżej wymienione uprawnienia. Parametrem PCYC QDKGMVW może być nazwa tabeli, perspektywy lub sekwencji. Aby nadać uprawnienie do wstawiania nowych rekordów do systemowej tabeli2 RIAWUGT użytkownikowi UGN: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonaj instrukcję SQL: )4#06KPUGTV 10RIAWUGT 61UGN 3. Po chwili zostanie wyświetlony komunikat potwierdzarjący zmodyfikowanie uprawnień użytkownika: )4#06 2 W rzeczywistości tabela RIAWUGT jest tabelą wirtualną — widokiem utworzonym na podstpawie danych przechowywanych w innych tabelach. Wykonując ćwiczepnie 2.19 Czytelnik pozna definicję tego widoku. 44 PostgreSQL 7.2. Ćwiczenia praktyczne Odbieranie uprawnień Ćwiczenie 2.17. Prawie na pewno cześć informacji przechowywanych w bazie danych będzie miała cha- rakter poufny. Dostęp do tych informacji powinni mieć jedynie wybrani użytkownicy. Ponadto, niektóre dane dostępne dla wszystkich użytkowników nie powinny być przez nich modyfikowane. Osiągnąć to możemy odbierając uprawnienia do wykonania określonych instrukcji pewnym użytkownikom lub ich grupom. Aby uniemożliwić modyfikowanie i dodawanie rekordów tabeli RIAWUGT użytkownikom należącym do grupy E[VGNPKE[: 1. Zaloguj się do systemowej bazy danych template1: RUSNVGORNCVG 2. Wykonaj instrukcję SQL: 4 81- KPUGTVWRFCVG 10RIAWUGT (41/)4172E[VGNPKE[ 3. Po chwili zostanie wyświetlony komunikat potwierdzarjący zmodyfikowanie uprawnień grupy użytkowników: 4 81- Podstawowym narzędziem służącym do administrowania SZBD PostgreSQL dla Linuksa jest program RUSN. Program ten jest częścią systemu PostgreSQL i zostanie automatycznie zainstalowany podczas jego instalacji. Program RUSN był już wykorzystywany w poprzed- nich ćwiczeniach — teraz nadeszła pora, żeby poświęcić mu nieco więcej uwagi. Uruchamianie psql Ćwiczenie 2.18. Pełna składnia polecenia RUSN jest następująca: RUSN=QRELG?=PCYCDC[FCP[EJ=PCYCWľ[VMQYPKMC?? Niepodanie dowolnego argumentu spowoduje przyjęcie jego wartości domyślnej. Domyślna baza danych znajduje się na komputerze lokalnym, zaś do uwierzytelniania zostanie użyta na- zwa tego użytkownika, który uruchomił program. Aby połączyć się z bazą znajdującą się na serwerze wywrołamy RUSN z nazwą bazy danych: RUSNŌFVGUV Domyślne wartości nazwy bazy danych, nazwy użytkownika, nazwy hosta serwera oraz portu można zastąpić poprzez ustawienie zmiennych środowiskowych: 2) #6#$#5 , 2)75 4, 2)*156 oraz 2)2146. Rozdział 2. v Administracja SZBD PostgreSQL 45 Tabela 2.1 zawiera krótki opis najważniejszych opcji wrywołania programu RUSN. Tabela 2.1. Lista opcji dostępnych przy uruchamianiu programu psql Opcja C # Znaczenie Wyświetlanie wszystkich poleceń skryptu Wyświetlanie tabel bez wyrównywania (odpowiednik opcjipŌ2HQTOCVWPCNKIPGF) E CR[VCPKG Wykonanie pojedynczego zapytania i wyjście z prograpmu F PCYC DC[ FCP[EJ Określenie bazy danych, do której ma nastąpić podłączepnie (domyślnie wartość zmiennej 2) #6#$#5 lub bieżąca nazwa zalogowanego użytkownika) G  H PCYC RNKMW ( EKæI PCMÎY J JQUV * N P Q PCYC RNKMW R RQTV 2OKGPPC [=CTI] S 4 EKæI PCMÎY U 5 V 6 VGMUV Echo zapytań wysyłanych do wewnętrznego elementu przeptwarzającego Wyświetla zapytania generowane przez polecenia wewnętprzne Wykonuje zapytania z pliku, po czym kończy działanie Ustawia separator pól (domyślnie: „|”) (odpowiednik opcjiŌ2HKGNFUGREKæIPCMÎY ) Określa hosta serwera bazy danych (domyślnie wartość zmiennej2)*156 lub komputer lokalny) Tabele wyświetlane w formacie HTML (odpowiednik opcjiŌ2HQTOCVJVON). Wyświetlenie listy dostępnych baz danych i zakończeniep działania. Wyłączenie mechanizmu readline (możliwości wywoływania poprzednich poleceń) Wysłanie wyniku zapytania do pliku Określenie portu serwera bazy danych (domyślnie wartość pzmiennej2)2146 lub wartość podana podczas kompilacji — domyślnie 5432) Ustawienie zmiennej drukowania OKGPPC na wartość CTI Uruchomienie w trybie SWKGV — bez wyświetlania komunikatów. Wyświetlane będą tylko wynik zapytań Ustawienie separatora rekordów. Domyślnie jest nim znapk końca wiersza (odpowiednik opcjiŌ2TGEQTFUGREKæIPCMÎY ) Tryb „krok po kroku” (potwierdzanie każdego zapytania) Tryb pojedynczego wiersza (znakiem zakończenia zapytapnia będzie znak końca wiersza, a nie średnik) Drukowanie samych wierszy (odpowiednik opcji Ō2VWRNGUAQPN[) Ustawienie znaczników tabel HTML (szerokość, ramki) (odpowiednik opcjiŌ2VCDDNGCVVTVGMUV ) 7 PCYC Wľ[VMQYPKMC Określenie użytkownika bazy danych (domyślnie wartość zmipennej2)75 4 XPCYC=YCTVQħè lub aktualne konto logowania) Ustawienie wartości zmiennej RUSN PCYC na wartość YCTVQħè 8 9 Z : Wyświetla informacje o wersji i kończy działanie Wyświetla pytanie o hasło (wywoływane automatycznie, gpdy hasło jest wymagane) Włączenie rozszerzonego wyjścia tabel Pominięcie odczytu pliku startowego (pliku `RUSNTE) 46 PostgreSQL 7.2. Ćwiczenia praktyczne Wyświetlanie informacji o bazie danych za pomocą wewnętrznych poleceń programu psql Ćwiczenie 2.19. Program RUSN jest nie tylko terminalem, za pomocą którego możemy wykonywać instrukcje strukturalnego języka zapytań. Posiada on również kilkadziesiąt własnych poleceń, za pomocą których możemy: v konfigurować środowisko programu, v wyświetlać informacje o obiektach wybranej bazy danycrh, v wywoływać polecenie SQL, takie jak 12; lub 5 6. Aby podłączyć się do wybranej bazy danych i wyświetlićr informacje o tabeli RIAWUGT: 1. Zaloguj się do bazy danych VGUV: RUSNVGUV 2. Wykonaj polecenie programu RUSN: FRIAWUGT Zostaną wyświetlone podstawowe informacje o widoku: rlista kolumn, typ danych oraz składnia instrukcji 5 . 6 będącej podstawą widoku. 3. Aby wyświetlić listę użytkowników, którzy mają nadane ruprawnienia do tego obiektu wpisz (rysunek 2.6): FRRIAWUGT Rysunek 2.6. Za pomocą poleceń programu psql możemy uzyskać wiele cennych informacji o bazie danych 4. Zakończ pracę programu: S Wywołanie polecenia FR bez parametru będącego nazwą obiektu w bazie danych spowoduje wyświetlenie listy uprawnień nadanych do wszystkich obpiektów bieżącej bazy danych. Rozdział 2. v Administracja SZBD PostgreSQL 47 Lista wewnętrznych poleceń programu RUSN znajduje się w tabeli 2.2. Tabela 2.2. Lista poleceń programu psql Polecenie C Znaczenie Przełączanie pomiędzy trybem z wyrównywaniem i bez pwyrównywania wierszy wyników E=QPPGEV?=PCYCDC[^ =Wľ[VMQYPKM?? Podłączenie do nowej bazy danych PCIđÎYGM EQR[ EQR[TKIJV FPCYCQDKGMVW F]V^K^U^X_ F]R^5^N_ FC Ustawienie nagłówka tabeli w wyniku Wykonanie instrukcji SQL 12; — skopiowanie danych zewnętrznych do lub z bazy danych Wyświetlenie zasad użytkowania i dystrybucji SZBD PostgreSQL Opis tabeli (perspektywy, indeksu, sekwencji) Wyświetlenie listy tabel, indeksów, sekwencji bądź persppektyw Wyświetlenie uprawnień, tabel systemowych bądź obiektówp typu BLOB Wyświetlenie listy funkcji agregacji FF=PCYCQDKGMVW? Wyświetlenie listy komentarzy dla tabeli, typu, funkcji plub operatora FH FQ F6 G=PCYCRNKMW? GEJQVGMUV GPEQFKPIMQFQYCPKG HUGRCTCVQT IPCYCRNKMW J=RQNGEGPKG? * KPCYCRNKMW N Wyświetlenie listy funkcji Wyświetlenie listy operatorów Wyświetlenie listy typów Edycja bieżącego bufora zapytań lub pliku PCYC RNKMW za pomocą zewnętrznego edytora Wyświetlenie tekstu na standardowym urządzeniu wyjścipowym Ustawienie kodowania na komputerze-kliencie Zmiana separatora pól Wysłanie zapytania do wewnętrznego elementu przetwaprzającego (a wyników do pliku lub potoku) Pomoc na temat składni poleceń SQL; w celu wyświetlenia szczegółowych informacji o wszystkich poleceniach należy wpisać Włączenie trybu HTML Wczytywanie i wykonywanie zapytań z pliku Wyświetlenie listy wszystkich baz danych NQAGZRQTV NQAKORQTV NQANKUV NQAWPNKPM Operacje z obiektami BLOB Q=PCYCRNKMW? R RUGVQRELC Wysłanie wszystkich wyników zapytania do pliku lub ppotoku Wyświetlenie zawartości bieżącego bufora zapytań Ustawienie opcji wyświetlania tabel. Dostępne są następpujące opcje: HQTOCV, DQTFGT, GZRCPFGF, HKGNFUGR, PWNN, TGEQTFUGR, VWRNGUAQPN[, VKVNG, VCDNGCVVT, RCIGT 48 PostgreSQL 7.2. Ćwiczenia praktyczne Tabela 2.2. Lista poleceń programu psql — ciąg dalszy Polecenie S SGEJQVGMUV T U=PCYCRNKMW? Znaczenie Zakończenie działania programu RUSN Zapis tekstu VGMUV do strumienia wynikowego zapytań Kasowanie bufora zapytań Wyświetlenie historii wykonywanych poleceń lub jej zappis do pliku UGVOKGPPC YCTVQħè Ustawienie wartości zmiennej wewnętrznej V 6PCEPKMK WPUGVOKGPPC YPCYCRNKMW Z Wyświetlanie tylko wierszy (bez nagłówków kolumn i liczpby wierszy) Znaczniki tabeli HTML Wyzerowanie wartości zmiennej wewnętrznej Zapis aktualnego bufora zapytań do pliku Włączenie trybu rozszerzonego dla wyniku Wyświetlenie listy uprawnień dostępu do tabel =RQNGEGPKG? K PCYCARNKMW Wyjście do powłoki lub wykonanie polecenia powłoki Uruchomienie poleceń czytanych z pliku PCYCARNKMW T ! Wyzerowanie bufora Uzyskanie ekranu pomocy Wydawanie poleceń języka SQL z programu psql Ćwiczenie 2.20. Domyślnie, znakiem końca pojedynczej instrukcji SQL dla programu RUSN jest średnik. Ponieważ instrukcja może zostać zapisana w dowolnej liczbie wierszy, program będzie czekał z wykonaniem instrukcji do momentu wykrycia rznaku . Dodatkowo, program ułatwia znalezienie błędu w wykonywanej właśnie instrukcji, wy- świetlając oprócz komunikatu błędu miejsce jego wystrąpienia. Aby wyświetlić alfabetycznie uporządkowaną listę utworzonych użytkowników bazy danych: 1. Zaloguj się do bazy danych VGORNCVG: RUSNVGORNCVG 2. Wykonaj instrukcję SQL: 5 . 6WUGPCOGRCUUYF (41/RIAWUGT 9* 4 WUGU[UKF  14 4$+WUGPCOG Zwróć uwagę, że program RUSN rozpoczął wykonywanie instrukcji dopiero po napotkaniu śred- nika — naciśnięcie klawisza Enter powodowało jedynie przejście do kolejnego wiersza. Rozdział 2. v Administracja SZBD PostgreSQL 49 3. Ponieważ ostatni wiersz instrukcji zawierał błąd składrniowy, program RUSN zamiast wykonać polecenie, zwrócił komunikat o błędzie — nierorzpoznanym słowie „DK”. 4. O ile tylko w Twoim systemie operacyjnym uruchomionar jest usługa bufora klawiatury, naciskając klawisz „­” wywołasz ponownie wpisane ostatnio wiersze polecenia. Wiedząc, że błąd wystąpił w ostatnim wierszur powtórz trzy pierwsze wiersze instrukcji (po każdym naciskając klawisz Enter), przywołaj ostatni wiersz i popraw błąd. Poprawna składnia instrukcji przyjmie rpostać: 5 . 6WUGPCOGRCUUYF (41/RIAWUGT 9* 4 WUGU[UKF  14 4$;WUGPCOG 5. Tym razem program wykona instrukcję i wyświetli na rekranie wybrane dane o użytkownikach (rysunek 2.7). Rysunek 2.7. Program psql nie ma co prawda opcji sprawdzania poprawności instrukcji, ale wskazuje lokalizacje błędu Uruchamianie skryptów za pomocą programu psql Ćwiczenie 2.21. Kolejną możliwością programu RUSN jest wykonanie skryptu zawierającego zarówno in- strukcje SQL, jak i polecenia wewnętrzne programu. Wielu administratorów zapisuje grupy instrukcji do pliku i korzysta z niego jak z prostego skryptu. Odczytanie zestawu poleceń RUSN z pliku jest możliwe przy użyciu wewnętrznego po- lecenia K. 1. Zaloguj się do bazy danych VGUV: RUSNVGUV 2. Wyświetl dane o wszystkich użytkownikach: 5 . 6 (41/RIAWUGT 3. Zapisz ostatnio wykonywane polecenie (przechowywane rw buforze) do pliku w selekt.sql. 50 PostgreSQL 7.2. Ćwiczenia praktyczne 4. Za pomocą dowolnego edytora tekst wyświetl zawartość pliku /home/postgres/selekt.sql. 5. Plik zawiera jedną instrukcję 5 . 6. Zamknij okno edytora i przywróć sesje programu RUSN. 6. Wykonaj instrukcje zapisane w pliku selekt.sql: KUGNGMVUSN 7. Program wyświetli dane o wszystkich użytkownikach barzy danych.
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

PostgreSQL 7.2. Ćwiczenia praktyczne
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: