Moduł 1
Przegląd sekcji
-
-
Wprowadzenie i zaproszenie na kurs Strona
Zaproszenie na bezpłatny kurs administracji PostgreSQL
-
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. -
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.
-
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.
-
Instrukcja instalacji PostgreSQL na Ubuntu - cheatsheet Plik
-
Instrukcja instalacji PostgreSQL na Ubuntu - cheatsheet Plik
-
Instalacja klastra PostgreSQL na Ubuntu - ćwiczenie Plik
-
Instalacja klastra PostgreSQL na Ubuntu - rozwiązanie ćwiczeń Strona
-
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.
-
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.
-
Uruchamianie zatrzymywanie i restartowanie PostgreSQL - cheatsheet Plik
-
Uruchamianie zatrzymywanie i restartowanie PostgreSQL - cheatsheet Plik685.1 KB
-
Uruchamianie zatrzymywanie i restartowanie PostgreSQL - ćwiczenie Plik
-
Uruchamianie zatrzymywanie i restartowanie PostgreSQL - rozwiązanie ćwiczeń Strona
-
Q&A nr 01 - Pytania i odpowiedzi Strona
Pytania i odpowiedzi
-
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
-
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.
-
Konfiguracja logow serwera - Cheatsheet Folder
-
Konfiguracja logow serwera Ćwiczenie Zadanie
-
Konfiguracja logów serwera - rozwiązanie ćwiczenia Strona
-
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.
-
Ustawienie hasła administratora - Cheatsheet Folder
-
Ustawianie hasla administratora - Ćwiczenie Zadanie
-
Ustawienia hasła administratora - rozwiązanie Strona
-