Przegląd sekcji

    • Wprowadzenie i zaproszenie na kurs Strona

      Zaproszenie na bezpłatny kurs administracji PostgreSQL

      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Tworzenie środowiska Lekcja

      Do udziału w warsztatowej części kursu będzie Ci potrzebne środowisko. Przygowaliśmy instrukcje dla trzech wariantów przygotowania środowiska, zarówno w formie video jak i tekstowej. Przedstawiamy też wady i zalety każdego z rozwiązań. Wybierz rozwiązanie najbardziej Ci odpowiadające i zrealizuj prework jeszcze przed rozpoczęciem kursu.

      Wariant 1 - wykorzystanie VirtualBox
      VirtualBox służy do wirtualizacji na lokalnym komputerze. Sam program jest bezpłatny, tworzenie hostów również nie wiąże się z żadnymi kosztami. Hosty wirtualne znajdują się na Twoim komputerze. Rozwiązanie dobre jeśli nie chcesz ponosić kosztów wirtualizacji w chmurze Azure, ale ma też pewne ograniczenia. Pamiętaj, że każdy host będzie wymagał odpowiedniej ilości pamięci RAM (po 2GB na każdy serwer w przypadku tego kursu), czasu procesora i paredziesiąt gigabajtów miejsca na dysku. Jeśli będziesz tworzyć jeden host - problemu raczej nie będzie. Jeśli jednak zechcesz stworzyć więcej hostów - np. na potrzeby replikacji, może się okazać że nie wystarczy Ci pamięci RAM, przestrzeni na dysku lub hosty będą działały wolno ze względu na współdzielenie procesora.

      Wariant 2 - wykorzystanie chmury Azure - plik template.json
      Wykorzystanie chmury Azure daje nam większą elastyczność niż w przypadku VirtualBox, nie jesteśmy ograniczeni zasobami lokalnego komputera. Możesz więc stworzyć klaster składający się z dowolnej liczby serwerów. Z drugiej strony po wykorzystaniu bezpłatnych zasobów w ramach "Free Tier" Azure, utrzymanie hostów będzie kosztowało nawet jeśli hosty będą wyłączone. Jedna włączona maszyna wirtualna z parametrami niezbędnymi dla prawidłowego przebiegu warsztatów będzie kosztowała 14 groszy za godzinę - czyli ok 104zł miesięcznie, wyłączona 4 grosze za godzinę - czyli ok 30zł miesięcznie (stan na dzień 22.07.2024). Maszyny nie muszą być uruchomione cały czas, wystarczy że uruchomisz je na czas ćwiczeń. Aby maksymalnie ułatwić Ci zadanie, przygotowaliśmy gotowy plik konfiguracyjny dla Azure - co zmacznie ułatwi Ci stworzenie maszyny.

      Wariant 3 - wykorzystanie chmury Azure - konfiguracja ręczna
      Ten wariant jest wariacją wariantu 2 z tą różnicą, że w tym przypadku proces konfiguracji wirtualnego hosta jest wykonywany całkowicie ręcznie. Daje Ci to większą kontrolę nad ustawieniami maszyny, ale wymaga więcej pracy.

      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Najważniejsze pojęcia Lekcja

      Słów kilka o najważniejszych pojęciach związanych z administracją serwerami PostgreSQL. Od bazy danych do high availability.

      • jakie są najważniejsze pojęcia związane z bazami danych PostgreSQL,
      • jaki jest podział fizyczny i logiczny klastra PostgreSQL,
      • czym są i jak działają pliki WAL,
      • czym jest i jak działa checkpoint,
      • jaki jest związek pomiędzy plikami WAL a checkpointami,
      • jakie są rodzaje kopii zapasowych i czym się charakteryzują,
      • czym jest replikacja, w jakim celu się ją stosuje i jak działa,
      • czym jest HA – High Availability – czyli jak zapewnić dostępność klastra przez nawet 99,999% czasu.
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Wdrożenie PostgreSQL na Ubuntu Lekcja

      Jak poprawnie wdrożyć klaster PostgreSQL na Ubuntu? Jak sprawić by uruchamiał się automatycznie z systemem? Jak określić położenie PGDATA? 

      • jak zainstalować binaria wybranej wersji (a nie domyślnej dla systemu) na serwerach z systemem Ubuntu,
      • gdzie co leży,
      • jak dodać binaria PostgreSQL do PATHa,
      • jak samemu zdefiniować położenie klastra,
      • jak skonfigurować by PostgreSQL działał jako usługa (dzięki czemu wygodniej się nim zarządza),
      • jak skonfigurować automatyczny start PostgreSQL z systemem,
      • jak skonfigurować system Ubuntu w taki sposób, by nie restartował PostgreSQL w przypadku gdy zacznie kończyć się pamięć RAM,
      • jak skonfigurować system Ubuntu w taki sposób, by nie wpadał w nieskończony cykl odtwarzania.
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Instrukcja instalacji PostgreSQL na Ubuntu - cheatsheet Plik
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Instrukcja instalacji PostgreSQL na Ubuntu - cheatsheet Plik
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Instalacja klastra PostgreSQL na Ubuntu - ćwiczenie Plik
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Instalacja klastra PostgreSQL na Ubuntu - rozwiązanie ćwiczeń Strona
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Wdrożenie PostgreSQL na systemach z rodziny Red Hat Lekcja

      Jak poprawnie wdrożyć klaster PostgreSQL na systemach z rodziny Red Hat?
      Jak sprawić by uruchamiał się automatycznie z systemem? Jak określić położenie PGDATA?

      W tej lekcji dowiesz się:

      • jak zainstalować binaria wybranej wersji (a nie koniecznie domyślnej dla systemu) na serwerach z systemami rodziny Red Hat,
      • gdzie co leży,
      • jak dodać binaria PostgreSQL do PATHa,
      • jak samemu zdefiniować położenie klastra,
      • jak skonfigurować by PostgreSQL działał jako usługa (dzięki czemu wygodniej się nim zarządza),
      • jak skonfigurować automatyczny start PostgreSQL z systemem,
      • jak skonfigurować system rodziny Red Hat w taki sposób, by nie restartował PostgreSQL w przypadku gdy zacznie kończyć się pamięć RAM,
      • jak skonfigurować system rodziny Red Hat w taki sposób, by nie wpadał w nieskończony cykl odtwarzania.
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Uruchamianie, zatrzymywanie i restartowanie PostgreSQL Lekcja
      Jak zarządzać stanem klastra? Zarówno za pomocą PG_CTL, jak i usługi systemowej.
      • jak sprawdzać stan usługi PostgreSQL,
      • jak zatrzymywać, uruchamiać i restartować PostgreSQL za pomocą pg_ctl,
      • jak zatrzymywać, uruchamiać i restartować PostgreSQL za pomocą usługi,
      • jak ustawić zmienną środowiskową PGDATA, by nie musieć ciągle podawać położenia klastra,
      • jak przeładowywać konfigurację bez restartu klastra.
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Uruchamianie zatrzymywanie i restartowanie PostgreSQL - cheatsheet Plik
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Uruchamianie zatrzymywanie i restartowanie PostgreSQL - cheatsheet Plik
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Uruchamianie zatrzymywanie i restartowanie PostgreSQL - ćwiczenie Plik
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Uruchamianie zatrzymywanie i restartowanie PostgreSQL - rozwiązanie ćwiczeń Strona
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Q&A nr 01 - Pytania i odpowiedzi Strona

      Pytania i odpowiedzi

      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Linki bazodanowe Strona

      Linki bazodanowe pozwalają łączyć się między bazami danych, odnosić się do obiektów znajdujących się w innych bazach, a także wykorzystywać obiekty pochodzące z różnych baz w jednym zapytaniu. Omówimy nie tylko łączenie się do innych baz PostgreSQL, ale także do baz Oracle i Microsoft SQL Server.

      Z tej lekcji dowiesz się:

      • co to są linki bazodanowe i w jakim celu się je stosuje,
      • jak zainstalować i skonfigurować FDW,
      • w jaki sposób odpytywać wiele baz danych PostgreSQL w jednym zapytaniu,
      • w jaki sposób z poziomu PostgreSQL odpytywać i modyfikować zawartość tabel na serwerze MS SQL Server,
      • w jaki sposób z poziomu PostgreSQL odpytywać i modyfikować zawartość tabel na serwerze Oracle
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Konfiguracja logów serwera Lekcja


      Z tej lekcji dowiesz się:

      • jak spowodować rejestrowanie logów do pliku,
      • jak konfigurować położenie logów,
      • jak konfigurować nazewnictwo plików logów,
      • jak konfigurować rotację plików logów,
      • jak konfigurować poziom logowania,
      • jak rejestrować w logach wolne zapytania (na potrzeby dalszej analizy i tuningu),
      • jak rejestrować w logach trwające zbyt długo operacje autovacuum,
      • jak rejestrować w logach zdarzenia checkpoint wraz z ich statystykami,
      • jak rejestrować w logach zdarzenia połączenia i rozłączenia sesji,
      • jak określać prefix linii logu w taki sposób, byśmy mieli komplet informacji o tym kto, z jakiego hosta, jaką aplikacją, kiedy, do której bazy się podłączył i wykonał daną zalogowaną czynność,
      • jak logować zdarzenia blokad zasobów (niekorzystne z perspektywy tuningu zdarzenie),
      • jak logować poszczególne typy operacji – tworzące, kasujące lub zmieniające np. tabele i indeksy, zmieniające dane lub wszystkie operacje,
      • jak logować zdarzenia tworzenia plików tymczasowych (niekorzystne z perspektywy tuningu zdarzenie),
      • jak generować logi do formatu CSV,
      • jak przeszukiwać logi za pomocą SQL.
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Konfiguracja logow serwera - Cheatsheet Folder
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Konfiguracja logow serwera Ćwiczenie Zadanie
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Konfiguracja logów serwera - rozwiązanie ćwiczenia Strona
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Ustawianie hasła administratora i innych użytkowników Lekcja

      Z tej lekcji dowiesz się:

      • jak zmienić hasło użytkownika postgres z poziomu psql,
      • jak zmienić hasło użytkownika postgres lub dowolnego innego użytkownika za pomocą ALTER USER.
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Ustawienie hasła administratora - Cheatsheet Folder
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Ustawianie hasla administratora - Ćwiczenie Zadanie
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS
    • Ustawienia hasła administratora - rozwiązanie Strona
      Niedostępne, chyba że spełnione wszystkie warunki: Należysz do grona JS