Kod

PostgreSQL: Czym jest ten system DBMS i jak z nim pracować

PostgreSQL: Czym jest ten system DBMS i jak z nim pracować

Kurs z zatrudnieniem: „Web Developer”

Dowiedz się więcej

PostgreSQL to jeden z najpopularniejszych systemów zarządzania bazami danych na świecie. Potwierdzają to nie tylko ankiety wśród programistów i przedsiębiorców, ale także duża liczba ofert pracy, w których znajomość PostgreSQL jest wymagana. Ten system DBMS przyciąga uwagę niezawodnością, rozbudowaną funkcjonalnością i obsługą nowoczesnych standardów. Znajomość PostgreSQL otwiera szerokie możliwości kariery w programowaniu i zarządzaniu danymi.

W tym artykule przyjrzymy się zaletom PostgreSQL, dowiemy się, jak zainstalować ten system DBMS w systemach Windows i Linux oraz utworzyć bazę danych z dwiema powiązanymi tabelami. Poznasz również historię tego wyjątkowego projektu. PostgreSQL to jeden z najpotężniejszych i najbardziej niezawodnych systemów zarządzania bazami danych, co czyni go doskonałym wyborem do tworzenia i utrzymywania systemów informatycznych.

  • Czym jest PostgreSQL i do czego służy?
  • Zalety i wady PostgreSQL
  • POSTGRES -> PostgreSQL: historia projektu
  • Jak zainstalować PostgreSQL w systemach Windows i Linux
  • Jak utworzyć i połączyć dwie tabele
  • Co czytać i gdzie śledzić aktualności

Czym jest PostgreSQL i do czego służy?

PostgreSQL to darmowy, obiektowo-relacyjny system zarządzania bazą danych o otwartym kodzie źródłowym. Ten wydajny system zarządzania bazą danych (DBMS), opracowany w języku C, oferuje wysoką wydajność i niezawodność w zakresie przechowywania i przetwarzania danych. Dzięki swojej elastyczności i rozszerzalności, PostgreSQL idealnie nadaje się do różnorodnych zastosowań, od małych stron internetowych po duże systemy korporacyjne. Użytkownicy cenią PostgreSQL za obsługę nowoczesnych standardów SQL i możliwość obsługi dużych wolumenów danych.

Model obiektowo-relacyjny PostgreSQL łączy zasady relacyjnych baz danych i obiektowych języków programowania. Umożliwia to obsługę takich pojęć, jak obiekty, klasy i dziedziczenie. W tym artykule przyjrzymy się, jak ta obsługa jest wdrażana i jakie korzyści oferuje ona programistom podczas tworzenia aplikacji. Wykorzystanie możliwości obiektowo-relacyjnych PostgreSQL sprzyja efektywniejszemu zarządzaniu danymi, poprawia strukturę kodu i umożliwia tworzenie bardziej elastycznych i skalowalnych rozwiązań.

Przerobiony tekst:

Sprawdź dodatkowe materiały:

Baza danych System zarządzania bazą danych (DBMS) to oprogramowanie przeznaczone do tworzenia, zarządzania i organizowania danych. Zapewnia efektywne przechowywanie, wyszukiwanie i przetwarzanie informacji, co czyni go niezbędnym narzędziem dla firm i różnych organizacji.

System DBMS umożliwia użytkownikom interakcję z bazami danych za pośrednictwem przyjaznych dla użytkownika interfejsów, upraszczając złożone operacje. Główne funkcje systemu DBMS obejmują tworzenie i modyfikowanie struktur danych, zarządzanie dostępem do informacji oraz zapewnianie integralności i bezpieczeństwa danych.

Korzystanie z systemu zarządzania bazą danych znacznie poprawia wydajność i niezawodność przetwarzania danych. Pozwala uniknąć duplikowania informacji, zapewnia ich ochronę i upraszcza proces analizy. W nowoczesnym środowisku biznesowym, w którym ilość danych szybko rośnie, posiadanie systemu DBMS staje się kluczowe dla prawidłowego funkcjonowania organizacji.

DBMS odgrywa zatem kluczową rolę w zarządzaniu danymi i jest niezbędnym narzędziem do optymalizacji procesów biznesowych, zwiększania wydajności pracy i podejmowania świadomych decyzji w oparciu o analizę danych.

PostgreSQL jest aktywnie wykorzystywany przez wiodące firmy IT, takie jak Huawei, Alibaba, Instagram i Yahoo. Według badania Stack Overflow przeprowadzonego wśród 48 000 profesjonalnych programistów, PostgreSQL został uznany za najpopularniejszy system zarządzania bazami danych (DBMS) w 2022 roku. Ta popularność wynika z wysokiej wydajności, niezawodności i szerokich możliwości dostosowywania, dzięki czemu PostgreSQL jest atrakcyjnym wyborem dla programistów i firm poszukujących efektywnego zarządzania danymi.

Zrzut ekranu: Stack Overflow / Skillbox Media

Zalety i wady PostgreSQL

PostgreSQL od wielu lat pozostaje jednym z najpopularniejszych systemów zarządzania bazami danych (DBMS). Wynika to z szeregu kluczowych zalet, które czynią go atrakcyjnym dla programistów i firm. Do głównych zalet PostgreSQL należą wysoka wydajność, niezawodność, rozszerzalność i obsługa złożonych zapytań. Ponadto system zapewnia wysoki stopień zgodności ze standardami SQL i oferuje zaawansowane narzędzia do pracy z danymi. Pełen zakres możliwości PostgreSQL znacznie przewyższa te cechy, potwierdzając jego pozycję lidera w dziedzinie DBMS.

PostgreSQL oferuje doskonałą rozszerzalność i szeroki wybór typów danych. Oprócz typów standardowych system obsługuje typy specjalistyczne do obliczeń geometrycznych, adresów sieciowych i wyszukiwania pełnotekstowego. Dzięki rozbudowanemu systemowi rozszerzeń użytkownicy mogą dodawać nowe funkcje i typy danych, znacznie zwiększając elastyczność pracy z bazami danych. Administratorzy mogą tworzyć niestandardowe funkcje i procedury w językach takich jak Python, PHP, Java, Ruby i wielu innych, a także pobierać moduły C z centralnego repozytorium PGXN. To sprawia, że ​​PostgreSQL jest idealnym wyborem dla programistów poszukujących wydajnego i konfigurowalnego narzędzia do zarządzania danymi. PostgreSQL osiąga skalowalność dzięki zastosowaniu różnych typów blokowania na poziomie tabeli i wiersza, umożliwiając efektywne zarządzanie współbieżnymi transakcjami. System obsługuje sześć typów indeksów, w tym B-tree i Generalized Interactive Search Tree (GiST), które optymalizują wyszukiwanie pełnotekstowe. Ponadto dziedziczenie tabel pozwala na szybkie tworzenie nowych tabel w oparciu o istniejącą strukturę, znacznie upraszczając zarządzanie danymi. Wydajność zapytań można analizować za pomocą polecenia explain, które dostarcza informacji o planie wykonania. Miejsce na dysku można utrzymać za pomocą polecenia vacuum, a statystyki tabel można zbierać za pomocą polecenia analyse. Narzędzia te zapewniają stabilną pracę i wysoką wydajność baz danych PostgreSQL.

PostgreSQL charakteryzuje się wysoką kompatybilnością międzyplatformową, dzięki czemu jest dostępny na wszystkich głównych systemach operacyjnych, w tym na różnych dystrybucjach Linuksa i BSD, macOS, Windows, Solaris i innych. Ta wszechstronność pozwala programistom i administratorom baz danych korzystać z PostgreSQL w szerokim zakresie środowisk. Co więcej, interfejsy do pracy z tym systemem zarządzania bazami danych są zaimplementowane w niemal wszystkich popularnych językach programowania, zapewniając elastyczność i łatwość integracji PostgreSQL z różnymi aplikacjami i rozwiązaniami.

Bezpieczeństwo w PostgreSQL jest zapewnione dzięki różnorodnym narzędziom chroniącym dane przed nieautoryzowanym dostępem. Narzędzia te obejmują hasła, Kerberos, LDAP, GSSAPI, SSPI i PAM. PostgreSQL oferuje możliwości zarządzania dostępem do obiektów bazy danych na różnych poziomach, od całej bazy danych po poszczególne kolumny. Ponadto system obsługuje sprzętowe szyfrowanie danych, co znacznie zwiększa poziom bezpieczeństwa informacji. Te funkcje sprawiają, że PostgreSQL jest niezawodnym wyborem do przechowywania i zarządzania danymi o znaczeniu krytycznym.

Możliwości PostgreSQL w zakresie NoSQL. PostgreSQL oferuje obsługę różnych formatów, w tym XML, a od wersji 9 obsługuje formaty JSON i JSONB. Korzystanie z formatu JSONB umożliwia przechowywanie dokumentów JSON w bazie danych bez wstępnej analizy składniowej, co znacznie zwiększa szybkość zapisu danych. Dzięki temu PostgreSQL jest skutecznym narzędziem do pracy z danymi nieustrukturyzowanymi i poprawia wydajność aplikacji korzystających z rozwiązań NoSQL.

Projekt jest udostępniany na licencji open source i jest swobodnie dystrybuowany. Jest on rozpowszechniany na licencji BSD, która przyznaje użytkownikom prawo do swobodnego używania, modyfikowania i rozpowszechniania. Kod źródłowy jest dostępny do wglądu w kopii lustrzanej oficjalnego repozytorium Git, co pozwala programistom i zainteresowanym stronom na zapoznanie się ze strukturą projektu i wprowadzanie własnych zmian.

PostgreSQL to prężnie działająca społeczność, wspierana przez aktywnych użytkowników i programistów. Otrzymują oni aktualne informacje o projekcie za pośrednictwem cotygodniowych newsletterów, omawiają kwestie administracyjne i uczestniczą w dyskusjach. Oficjalna dokumentacja PostgreSQL jest regularnie aktualizowana i w momencie publikacji zawiera około 3000 stron szczegółowych i łatwych do zrozumienia instrukcji, co czyni ją cennym źródłem wiedzy dla użytkowników na każdym poziomie zaawansowania. Społeczność i dokumentacja zapewniają solidne wsparcie i promują efektywne wykorzystanie PostgreSQL w różnorodnych projektach.

Pomimo wszystkich zalet tego systemu DBMS, ma on również szereg wad. Ważne jest, aby wziąć te aspekty pod uwagę przy wyborze bazy danych do swojego projektu. Pomimo wysokiej wydajności i niezawodności, niektórzy użytkownicy mogą napotkać ograniczenia związane ze skalowalnością lub złożonością konfiguracji. Dlatego przed podjęciem ostatecznej decyzji warto dokładnie przeanalizować zalety i wady tego systemu zarządzania bazami danych.

Złożoność konfiguracji PostgreSQL. Prawdopodobnie zauważyłeś już szeroki zakres możliwości oferowanych przez PostgreSQL. Ta różnorodność funkcjonalności może prowadzić do różnych konfiguracji, które czasami mogą być trudne dla początkujących. Konfiguracja bazy danych wymaga dogłębnej znajomości architektury i jej parametrów, co może stanowić przeszkodę w efektywnym korzystaniu z systemu. Jednak dzięki opanowaniu podstawowych zasad konfiguracji PostgreSQL, użytkownicy będą mogli zmaksymalizować potencjał tego potężnego systemu DBMS.

PostgreSQL jest znany z wysokiego zużycia zasobów, które może obejmować znaczne ilości pamięci i czasu procesora. Jest to szczególnie widoczne podczas przetwarzania dużych wolumenów danych i wykonywania złożonych zapytań. Ważne jest, aby wziąć ten aspekt pod uwagę przy wyborze systemu zarządzania bazą danych, zwłaszcza w projektach o wysokich wymaganiach wydajnościowych. Optymalizacja zapytań i odpowiednie dostrojenie serwera mogą pomóc zmniejszyć obciążenie zasobów i poprawić ogólną wydajność pracy z PostgreSQL.

PostgreSQL może mieć pewne ograniczenia funkcjonalne w porównaniu z niektórymi komercyjnymi systemami zarządzania bazami danych (DBMS). Może to objawiać się brakiem niektórych funkcji lub narzędzi dostępnych w droższych rozwiązaniach. Niemniej jednak PostgreSQL pozostaje potężnym i niezawodnym narzędziem do pracy z danymi, oferując wiele innych zalet, takich jak wysoka wydajność, elastyczność i rozbudowane możliwości personalizacji.

Należy zauważyć, że te niedociągnięcia dotyczą przede wszystkim określonych przypadków użycia. Ogólnie rzecz biorąc, PostgreSQL nadal jest jednym z najpotężniejszych i najpopularniejszych systemów zarządzania bazami danych typu open source. Ten system DBMS znany jest ze swojej niezawodności, rozszerzalności i obsługi złożonych zapytań, co czyni go doskonałym wyborem dla różnorodnych projektów.

Jak POSTGRES stał się PostgreSQL: Historia projektu i społeczności

W tej sekcji pokrótce omówimy historię PostgreSQL. Jeśli chcesz szybko zainstalować ten system DBMS i rozpocząć praktyczne szkolenie, możesz przejść do następnej sekcji. Pierwotnie opracowany na Uniwersytecie Kalifornijskim w Berkeley, PostgreSQL stał się jednym z najpopularniejszych systemów zarządzania bazami danych. Jego zaawansowane funkcje i rozszerzalność uczyniły go idealnym wyborem do tworzenia nowoczesnych aplikacji. PostgreSQL jest nadal aktywnie rozwijany i wspierany przez społeczność, zapewniając użytkownikom niezawodne narzędzia do pracy z danymi.

W 1985 roku, gdy SQL dopiero zaczynał wyłaniać się jako standard, grupa inżynierów z Uniwersytetu Kalifornijskiego w Berkeley, pod przewodnictwem profesora Michaela Stonebrakera, rozpoczęła prace nad systemem zarządzania relacyjnymi bazami danych POSTGRES. Projekt ten opierał się na pracach Stonebrakera nad INGRES, jednym z pierwszych relacyjnych systemów DBMS. POSTGRES był ważnym krokiem w ewolucji relacyjnych baz danych, oferując nowe możliwości pracy z danymi i zarządzania nimi. Projekt ten miał znaczący wpływ na dalszy rozwój technologii przechowywania i przetwarzania informacji.

Michael Stonebraker Zdjęcie: Wikimedia Commons

W 1988 roku zespół programistów opublikował kilka prac naukowych na temat języka zapytań POSTQUEL, który stał się podstawą systemu zarządzania bazą danych POSTGRES. Nazwa języka podkreślała jego nowoczesność i wyższość nad SQL. POSTGRES nazywano „postrelacyjnym systemem zarządzania bazą danych”, ponieważ został opracowany w celu przezwyciężenia oczywistych ograniczeń SQL w tamtym czasie. Pierwsza wersja tego innowacyjnego systemu zarządzania bazą danych (DBMS) została wydana w 1989 roku, ale w 1992 roku, po kilku aktualizacjach, projekt został zamknięty. Na szczęście kod źródłowy POSTGRES został udostępniony na licencji BSD. Absolwenci Uniwersytetu Kalifornijskiego w Berkeley, Andrew Yu i Jolie Chen, kontynuowali rozwój projektu, zastępując język POSTQUEL językiem SQL, który stał się już wówczas międzynarodowym standardem. Ta nowa wersja początkowo nosiła nazwę Postgres95, co odpowiadało rokowi jej wydania, a później została przemianowana na PostgreSQL. Od tego czasu wydano 28 wersji tego systemu zarządzania bazą danych, z których każda wprowadzała znaczące ulepszenia i nowe funkcje. PostgreSQL stał się jednym z najpopularniejszych i najbardziej niezawodnych rozwiązań relacyjnych baz danych, przyciągając uwagę programistów i organizacji na całym świecie.

Obecnie projekt jest wspierany przez niewielki zespół programistów, co jest rzadkością w dzisiejszych czasach. Zespołem kieruje komitet sterujący (Zespół Główny), który podejmuje kluczowe decyzje dotyczące rozwoju i wydawania nowych wersji PostgreSQL. Programiści dzielą się na stałych uczestników (współtwórców) i głównych współtwórców. Istnieje również niewielka grupa programistów (współtwórców), którzy mają prawo do wprowadzania zmian w kodzie źródłowym projektu. Takie struktury zapewniają efektywne zarządzanie i rozwój PostgreSQL, przyczyniając się do jego zrównoważonego rozwoju i poprawy funkcjonalności.

W skład Zespołu Głównego wchodzą trzej rosyjscy programiści: Oleg Bartunov, Fedor Sigaev i Alexander Korotkov. Ci specjaliści wnoszą znaczący wkład w projekt dzięki swojemu doświadczeniu i wiedzy w dziedzinie programowania.

Dyrektor generalny Postgres Professional Oleg Bartunov Zdjęcie: Postgres Professional

W momencie publikacji artykułu najnowszą stabilną wersją jest PostgreSQL 15. 29 czerwca 2023 r. ukazała się druga wersja beta PostgreSQL 16. Ta aktualizacja wprowadza nowe funkcje i ulepszenia, które pomogą programistom i administratorom baz danych optymalizować ich rozwiązania. Bądź na bieżąco, aby być na bieżąco z najnowszymi zmianami i możliwościami oferowanymi przez PostgreSQL.

Jak zainstalować PostgreSQL w systemach Windows i Linux

Instalator dla wszystkich systemów operacyjnych jest dostępny na oficjalnej stronie PostgreSQL w sekcji „Najnowsze wersje”. Na stronie głównej witryny kliknij przycisk Pobierz i wybierz system operacyjny, który chcesz pobrać.

Zrzut ekranu: PostgreSQL / Skillbox Media
Zrzut ekranu: PostgreSQL / Skillbox Media

W tej sekcji szczegółowo omówimy proces instalacji w systemach operacyjnych Windows i Linux. Instalacja oprogramowania w systemach Windows i Linux ma swoją specyfikę, dlatego ważne jest, aby postępować zgodnie z instrukcjami, aby zapewnić prawidłowe działanie aplikacji. Omówimy niezbędne kroki i zalecenia dotyczące pomyślnej instalacji na obu platformach, a także możliwe problemy i ich rozwiązania.

Aby pobrać instalator PostgreSQL, kliknij ikonę systemu Windows w sekcji Pobieranie. Instalator zawiera ważne narzędzia niezbędne do pracy z PostgreSQL, takie jak pgAdmin, wiersz poleceń i dodatkowe narzędzia do zarządzania bazą danych. Upewnij się, że pobierasz najnowszą wersję, aby korzystać ze wszystkich najnowszych funkcji i ulepszeń wydajności.

  • Serwer PostgreSQL,
  • pgAdmin4 – graficzne narzędzie do zarządzania bazą danych,
  • menedżer pakietów Stack Builder.

Aby pobrać instalator, przejdź do strony wyboru wersji, klikając link „Pobierz instalator”. Wyświetli się lista dostępnych plików. Zaleca się wybranie najnowszej wersji (w tym przykładzie jest to wersja 15.3). Upewnij się, że bitowość pobranego pliku odpowiada bitowości Twojego systemu operacyjnego.

Zrzut ekranu: EDB / Skillbox Media

Uruchom instalator programu. W oknie powitalnym kliknij Dalej, aby kontynuować proces instalacji. Wybierz preferowaną ścieżkę instalacji lub pozostaw domyślny folder, jeśli nie chcesz wprowadzać żadnych zmian. Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby dokończyć instalację.

Zrzut ekranu: Skillbox Media

Należy pamiętać, że zgodność z obowiązującymi wymogami SEO jest kluczowym czynnikiem skutecznej promocji Twoich treści w internecie. Optymalizacja tekstu pomaga poprawić widoczność witryny w wyszukiwarkach i przyciągnąć odbiorców docelowych. Kluczowe jest używanie trafnych słów kluczowych, tworzenie wysokiej jakości i unikalnych treści oraz zapewnienie łatwej nawigacji w witrynie. Regularna aktualizacja informacji i dostosowywanie ich do aktualnych trendów również przyczynia się do poprawy pozycji w wynikach wyszukiwania. Skuteczna strategia SEO obejmuje analizę konkurencji i ciągłe ulepszanie treści, co ostatecznie prowadzi do wzrostu ruchu i poprawy doświadczeń użytkowników.

Wybierając ścieżkę instalacji, upewnij się, że nie tworzysz folderu z wyprzedzeniem. W przeciwnym razie pojawi się błąd: „Wybrany katalog instalacyjny istnieje i nie jest pusty. Wybierz inny katalog”. Zamiast tego po prostu podaj nazwę folderu, na przykład: „PostgreSQL/15”, a instalator automatycznie utworzy odpowiedni katalog. Pozwoli to uniknąć problemów i uprości proces instalacji.

Następnie musisz wybrać komponenty do zainstalowania. Domyślnie wszystkie elementy są zaznaczone, ale nie musisz ich wszystkich instalować. Najważniejsze, których potrzebujemy, to serwer Postgres i pgAdmin. Zaleca się również pozostawienie narzędzi wiersza poleceń, ponieważ najprawdopodobniej będą potrzebne do administrowania bazą danych.

Zrzut ekranu: Skillbox Media

Wybierz katalog, w którym chcesz zapisać utworzone bazy danych. Podczas szkolenia zaleca się pozostawienie domyślnej ścieżki. Uprości to zarządzanie danymi i pozwoli Ci skupić się na nauce.

Zrzut ekranu: Skillbox Media

W następnym kroku musisz utworzyć hasło administratora. To hasło będzie wymagane do połączenia z serwerem PostgreSQL i zalogowania się do pgAdmin 4. Zalecamy zapisanie go w bezpiecznym miejscu, aby uniknąć konieczności ponownej instalacji systemu w przyszłości.

Instalator PostgreSQL poprosi o wybór języka i wyświetli przegląd ustawień, które zostaną użyte podczas instalacji. Klikaj „Dalej”, aż rozpocznie się proces instalacji, który potrwa kilka minut. Po zakończeniu instalacji w menu Start zostanie utworzony folder ze składnikami PostgreSQL i dokumentacją.

Zrzut ekranu: Skillbox Media

Sprawdźmy Funkcjonalność systemu. Uruchom pgAdmin i wybierz sekcję Serwery w lewym górnym rogu interfejsu. Wprowadź hasło użytkownika ustawione podczas początkowej konfiguracji. Upewnij się, że masz prawidłowy dostęp do serwera.

Zrzut ekranu: Skillbox Media

Jeśli hasło zostanie wprowadzone poprawnie, na ekranie pojawi się panel. Ten interfejs zapewnia dostęp do głównych funkcji i danych systemu. Możesz łatwo zarządzać ustawieniami, przeglądać raporty i otrzymywać aktualne informacje. Upewnij się, że znasz elementy pulpitu nawigacyjnego, aby efektywnie korzystać ze wszystkich funkcji platformy.

Zrzut ekranu: Skillbox Media

Aby dowiedzieć się, czy serwer jest połączony, możesz wysłać zapytanie do bazy danych za pomocą polecenia SELECT VERSION(). To polecenie zwróci informacje o wersji zainstalowanego systemu zarządzania bazą danych (DBMS). Sprawdzenie połączenia z serwerem i uzyskanie wersji systemu DBMS to ważne kroki, które zapewniają prawidłowe działanie bazy danych i zrozumienie jej możliwości.

Zrzut ekranu: Skillbox Media

Jeśli odpowiedź Na dole ekranu wyświetlany jest komunikat „PostgreSQL”, co oznacza, że ​​serwer pomyślnie nawiązał połączenie i jest gotowy do przetwarzania żądań. Gratulujemy udanego połączenia!

Instalację PostgreSQL w systemie operacyjnym Linux najskuteczniej można przeprowadzić za pomocą terminala, korzystając z oficjalnych repozytoriów dystrybucji. Aby rozpocząć, otwórz terminal Bash i zaktualizuj listy pakietów w systemie, aby zapewnić sobie dostęp do najnowszych wersji oprogramowania.

Aby zainstalować PostgreSQL, uruchom poniższe polecenie. Upewnij się, że posiadasz niezbędne uprawnienia dostępu i aktualne repozytoria. PostgreSQL to zaawansowany system zarządzania bazami danych typu open source, który obsługuje wiele funkcji i zapewnia niezawodne przechowywanie danych. Instalacja PostgreSQL pozwoli Ci efektywnie zarządzać danymi i je analizować. Po wykonaniu polecenia postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby dokończyć instalację.

Flaga -y służy do automatycznego potwierdzenia instalacji, eliminując konieczność ręcznego wprowadzania odpowiedzi „tak/nie”. To znacznie upraszcza proces instalacji oprogramowania, szczególnie w scenariuszach wymagających instalacji wielu pakietów lub zautomatyzowanych procesów. Użycie tej flagi zapewnia szybszą i wydajniejszą pracę z menedżerami pakietów.
Zrzut ekranu: Skillbox Media

Po zakończeniu instalacji sprawdź, czy usługa PostgreSQL jest włączony i serwer jest gotowy do przyjmowania połączeń. To ważny krok zapewniający prawidłowe działanie bazy danych i możliwość interakcji z nią.

Zrzut ekranu: Skillbox Media

Tworzenie bazy danych i użytkownika w PostgreSQL to Ważny krok do pracy z serwerem za pośrednictwem panelu pgAdmin 4. Po zainstalowaniu PostgreSQL na komputerze masz konto PostgreSQL, które umożliwia zarządzanie procesami usług i tworzenie nowych użytkowników. Aby przełączyć się na tego użytkownika, uruchom następujące polecenie:

Po uruchomieniu polecenia w wierszu poleceń pojawi się prefiks PostgreSQL. Oznacza to, że znajdujesz się w środowisku PostgreSQL, co pozwala na uruchamianie poleceń i zapytań do bazy danych. Upewnij się, że poprawnie skonfigurowałeś połączenie i masz wszystkie niezbędne uprawnienia do pracy z danymi.

Zrzut ekranu: Skillbox Media

Nowa baza danych została utworzona w powłoce poleceń psql. Za pomocą psql możesz łatwo zarządzać bazami danych, uruchamiać zapytania SQL i administrować swoimi danymi. Przed utworzeniem bazy danych upewnij się, że masz zainstalowany PostgreSQL i dostęp do wiersza poleceń. Otwórz psql i uruchom odpowiednie polecenie, aby utworzyć nową bazę danych. Umożliwia to uporządkowanie i przechowywanie danych w wygodnym formacie, zapewniając wysoki poziom wydajności i bezpieczeństwa.

Zrzut ekranu: Skillbox Media

Jeśli monit o wprowadzenie danych zmienił się na postgres=#, oznacza to, że znajdujesz się w środowisku interfejsu wiersza poleceń psql do pracy z bazami danych PostgreSQL. W tym trybie możesz wykonywać zapytania SQL, zarządzać bazami danych i wykonywać różne zadania administracyjne. Upewnij się, że znasz podstawowe polecenia psql, aby efektywnie pracować z PostgreSQL.

Utwórz nowego użytkownika w pgAdmin, który będzie używany do pracy z bazą danych i ustaw hasło dla tego konta.

Powłoka będzie powtarzać nazwę każdego pomyślnie wykonanego polecenia. Pamiętaj o dodaniu średnika na końcu, w przeciwnym razie może on zostać błędnie zinterpretowany jako kontynuacja wpisywania instrukcji.

Zrzut ekranu: Skillbox Media

Utwórz bazę danych o nazwie skillbox_test_db.

Aby przyznać nowemu użytkownikowi wszystkie niezbędne uprawnienia w utworzonej bazie danych, należy ukończyć proces przypisywania uprawnień.

Jeśli powłoka potwierdziła uprawnienia poleceniem GRANT, można ją zamknąć, naciskając Ctrl + D.

Teraz należy zainstalować pgAdmin. Warto jednak pamiętać, że program ten nie jest dostępny w standardowych repozytoriach Ubuntu, dlatego należy skorzystać z repozytorium dostawcy – pgAdmin 4 APT. Może to wymagać dodatkowych kroków, ale ostatecznie uzyskasz dostęp do potężnego narzędzia do zarządzania bazami danych PostgreSQL.

Aby rozpocząć, należy zainstalować publiczny klucz GPG. Klucz ten jest niezbędny do weryfikacji autentyczności repozytorium i zapewnienia bezpieczeństwa podczas pracy z pakietami.

Utwórz plik konfiguracyjny dla repozytorium, który będzie używany przez narzędzie apt do uzyskiwania informacji potrzebnych do instalacji pakietów. Ten plik zawiera dane o lokalizacji pakietów i ich wersjach, co pozwala systemowi efektywnie zarządzać instalacją i aktualizacjami oprogramowania. Prawidłowe ustawienia pliku konfiguracyjnego zapewniają stabilną pracę systemu i dostęp do aktualnych wersji pakietów.

Instalacja pgAdmin 4 została zakończona. Teraz możesz używać tego potężnego narzędzia do zarządzania bazami danych PostgreSQL. Upewnij się, że wykonałeś wszystkie kroki instalacji i skonfigurowałeś niezbędne ustawienia. Dzięki pgAdmin 4 możesz łatwo administrować bazami danych, analizować dane i optymalizować ich działanie.

Po zakończeniu polecenia wszystkie pliki niezbędne do uruchomienia pgAdmin 4 będą znajdować się na Twoim komputerze. Zanim jednak zaczniesz, musisz uruchomić skrypt, który przygotuje pgAdmin do prawidłowego działania.

Podczas instalacji zostaniesz poproszony o podanie adresu e-mail i hasła. Hasło jest wymagane do uzyskania dostępu do panelu administracyjnego, dlatego zaleca się jego zapamiętanie lub zapisanie. Po zakończeniu procesu skrypt uruchomi ponownie serwer Apache2 z zaktualizowanymi ustawieniami.

Uruchom pgAdmin 4, przechodząc na adres IP http://127.0.0.1/pgadmin4. W wyświetlonym oknie autoryzacji wprowadź adres e-mail i hasło podane w poprzednim kroku.

Jeśli wprowadzisz dane poprawnie, uzyskasz dostęp do interfejsu pgAdmin 4.

Zrzut ekranu: Skillbox Media

pgAdmin 4 to zaawansowany klient do pracy z bazami danych PostgreSQL, która zapewnia wygodny dostęp do zarządzania danymi. Aby rozpocząć pracę z danymi, należy połączyć pgAdmin 4 z serwerem PostgreSQL. W tym celu wystarczy kliknąć ikonę „Dodaj nowy serwer”. Następnie będziesz mógł skonfigurować połączenie, określając parametry serwera i autoryzacji, co pozwoli Ci efektywnie zarządzać swoimi bazami danych.

Zrzut ekranu: Skillbox Media

Podaj nazwę swojego serwera i przejdź do jego ustawień.

Zrzut ekranu: Skillbox Media

Wypełnij trzy pola: nazwa hosta (dla lokalnego komputer, podaj localhost), nazwę użytkownika i hasło. Nazwa użytkownika i hasło zostały ustawione wcześniej. Upewnij się, że wprowadzone dane są poprawne, aby pomyślnie połączyć się z bazą danych.

Zrzut ekranu: Skillbox Media

Jeśli wszystkie dane zostaną wprowadzone poprawnie, wyświetlą się informacje o dostępnych bazach danych po lewej. Aby przetestować połączenie, uruchom polecenie SELECT VERSION() w narzędziu Query Tool, aby uzyskać numer wersji systemu zarządzania bazą danych (DBMS).

Zrzut ekranu: Skillbox Media

W tym przypadku odpowiedź brzmi następująco:

PostgreSQL 14.8 na Ubuntu 22.04.1 to zaawansowany system zarządzania bazą danych zaprojektowany z myślą o niezawodności i wydajności. Ta wersja PostgreSQL, skompilowana dla architektury x86_64-pc-linux-gnu z użyciem kompilatora GCC 11.3.0, oferuje ulepszone funkcje i optymalizacje, dzięki czemu jest idealnym wyborem dla programistów i administratorów baz danych. PostgreSQL 14.8 oferuje zaawansowane możliwości manipulacji danymi, ulepszoną obsługę przetwarzania równoległego oraz nowe funkcje upraszczające administrację. Korzystanie z tej wersji w systemie Ubuntu zapewnia stabilność i bezpieczeństwo, co jest kluczowe dla nowoczesnych aplikacji i usług.

Serwer PostgreSQL został pomyślnie zainstalowany i połączony z pgAdmin 4, co umożliwia mu akceptowanie i przetwarzanie żądań.

Jak utworzyć i połączyć dwie tabele

Teraz, gdy baza danych została pomyślnie połączona, przejdźmy do ćwiczenia zapytań SQL. Rozważmy sytuację, w której menedżerowie Skillbox zlecili nam stworzenie bazy danych studentów, która będzie wyświetlać informacje o kursie, w którym uczestniczy każdy student. Aby uprościć zadanie, załóżmy, że każdy student może zapisać się tylko na jeden kurs. Pozwoli nam to skupić się na podstawowych aspektach pracy z SQL i efektywnym zarządzaniu danymi.

Aby skutecznie zarządzać danymi w projekcie, konieczne jest utworzenie dwóch tabel: jedna będzie zawierała informacje o kursach, a druga o studentach. Pomoże to uporządkować dane i uprościć ich przetwarzanie. Tworzenie takich tabel będzie świetnym sposobem na ćwiczenie pracy z bazami danych i zapisywania informacji.

Utworzymy tabelę z kursami, którą nazwiemy Kursy. Tabela ta będzie zawierać następujące pola:

  • course_id — unikalny identyfikator kursu generowany automatycznie, który nie może być wartością NULL. To pole będzie pełnić funkcję klucza podstawowego;
  • course_name — nazwa kursu. Pole nie może przekraczać 100 znaków, a jego wartość nie może być wartością NULL;
  • hours — liczba godzin jako liczba całkowita;
  • price — koszt kursu jako liczba zmiennoprzecinkowa;
  • is_open — przechowuje informacje o tym, czy kurs jest otwarty, czy zamknięty i nie może zawierać wartości NULL.

Każdy student w tabeli będzie miał pole z identyfikatorami kursów, na które jest zapisany. Zestaw identyfikatorów musi być ściśle ograniczony, a dodawanie nieistniejących identyfikatorów jest zabronione. Zapewni to integralność danych i pozwoli uniknąć błędów w systemie zarządzania kursami.

Tworzenie tabeli w bazie danych PostgreSQL odbywa się za pomocą zapytania SQL. Można to zrobić w powłoce poleceń psql lub w interfejsie narzędzia Query Tool w pgAdmin. W tym celu należy użyć polecenia CREATE TABLE, które pozwala zdefiniować strukturę tabeli i jej pola. Szczegółowe instrukcje dotyczące instalacji i uruchamiania PostgreSQL w systemie operacyjnym Linux można znaleźć w odpowiedniej dokumentacji. Prawidłowe tworzenie tabel jest ważnym krokiem w projektowaniu bazy danych, ponieważ określa sposób przechowywania i przetwarzania danych w przyszłości.

Innym sposobem pracy z tabelami jest interfejs graficzny. Aby to zrobić, przejdź do sekcji „Schematy” na pasku bocznym i kliknij prawym przyciskiem myszy sekcję „Tabele”. W otwartym menu kontekstowym wybierz opcję utworzenia nowej tabeli.

Zrzut ekranu: Skillbox Media
Zrzut ekranu: Skillbox Media
Zrzut ekranu: Skillbox Media

W sekcji ustawień ogólnych określ nazwę tabeli, a następnie przejdź do sekcji Kolumny. W tej sekcji możesz utworzyć i skonfigurować niezbędne pola dla swojej tabeli.

Utwórzmy i skonfigurujmy pole course_id. Aby to zrobić, kliknij przycisk „+” w prawym górnym rogu okna modalnego. W wyświetlonym wierszu określ parametry spełniające wymagania: pole musi być kluczem podstawowym i nie może zawierać wartości NULL. Zapewni to unikalność i niezawodność danych w Twojej bazie danych.

Zrzut ekranu: Skillbox Media

Dodaj automatyczne generowanie wartości, klikając ikonę ołówka (wiersz edycji). Otworzy się sekcja ze szczegółowymi ustawieniami. Przejdź do sekcji „Ograniczenia” i wybierz typ „IDENTYFIKACJA”. Pomyślnie utworzyłeś automatycznie wygenerowany klucz podstawowy.

Zrzut ekranu: Skillbox Media

Wypełnij pozostałe pola samodzielnie.

Wskazówka 1: Użyj powiązanych słów kluczowych do Twojego tematu, aby poprawić widoczność w wyszukiwarkach. Zoptymalizuj tytuły i metaopisy, aby przyciągnąć uwagę grupy docelowej. Upewnij się, że Twoje treści są łatwe w czytaniu i uporządkowane, co pomoże odwiedzającym lepiej przyswoić informacje. Dodanie linków wewnętrznych i zewnętrznych również pomoże zwiększyć autorytet Twojej strony i poprawić jej pozycję w rankingu. Nie zapominaj o trafności i unikalności swoich treści, ponieważ są to ważne czynniki dla SEO.

W przypadku pól tekstowych o zmiennej, ale ograniczonej długości zaleca się użycie typów danych „character variation” i „varchar”. Te typy zapewniają elastyczność w przechowywaniu wartości ciągów znaków, umożliwiając efektywne wykorzystanie pamięci i utrzymanie optymalnej wydajności bazy danych. Wybór między typem „character variation” a „varchar” zależy od konkretnych wymagań projektu, ale oba typy idealnie nadają się do przechowywania informacji tekstowych o zmiennej długości.

Wskazówka 2 to ważny element, który może Ci pomóc w różnych sytuacjach. Służy do wyjaśniania informacji, dostarczania dodatkowych rekomendacji lub wskazówek. Korzystanie ze wskazówek poprawia doświadczenie użytkownika, czyniąc proces bardziej zrozumiałym i wydajnym. Wskazówka 2 może być stosowana w różnych kontekstach, w tym w nauce, programowaniu i życiu codziennym. Ważne jest, aby informacje były jasne i zwięzłe, aby użytkownicy mogli łatwo zrozumieć informacje i zastosować je w praktyce. Prawidłowe formatowanie i treść wskazówki nr 2 przyczyniają się do komfortu użytkowania i poprawiają jakość pracy. PostgreSQL obsługuje dwa typy liczb zmiennoprzecinkowych: rzeczywiste i podwójnej precyzji. Te typy danych umożliwiają efektywne przechowywanie i przetwarzanie liczb z częściami ułamkowymi. Typ rzeczywisty to liczba zmiennoprzecinkowa pojedynczej precyzji, zajmująca 4 bajty pamięci, natomiast typ podwójnej precyzji to liczba zmiennoprzecinkowa podwójnej precyzji, zajmująca 8 bajtów. Wybór między tymi typami zależy od wymaganej precyzji i zakresu przetwarzanych wartości. Użycie prawidłowego typu danych w programie PostgreSQL poprawia wydajność i pozwala uniknąć błędów obliczeniowych.

W rezultacie otrzymasz zestaw pól.

Druga tabela, o nazwie students, będzie przechowywać dane o studentach, a także linki do odpowiednich kursów z tabeli courses. Ta struktura pozwoli Ci efektywnie zarządzać informacjami o studentach i ich kursach, zapewniając łatwy dostęp do niezbędnych danych. Każdy rekord w tabeli students będzie zawierał unikalny identyfikator studenta, jego imię i nazwisko, dane kontaktowe oraz linki do kursów, na które jest zapisany. W ten sposób interakcja między tabelami students i courses pomoże uprościć proces wyszukiwania i analizowania informacji edukacyjnych.

  • student_id — unikalny identyfikator studenta (klucz podstawowy);
  • name — imię studenta;
  • middlename — imię patronimiczne;
  • lastname — nazwisko;
  • contacts — kontakty (telefon, e-mail, linki do mediów społecznościowych itp.);
  • course — kursy (zestaw identyfikatorów z tabeli course). To pole działa jako klucz obcy, który łączy ze sobą tabele.

Ponieważ jeden student może mieć wiele kontaktów, zaleca się użycie typu znakowego diverse[] (tablica ciągów o ograniczonej długości) dla pola contacts. Umożliwi to efektywne przechowywanie i przetwarzanie informacji o różnych sposobach kontaktowania się z każdym uczniem. Użycie tablicy ciągów znaków zapewni elastyczność i wygodę podczas dodawania lub zmieniania danych kontaktowych bez konieczności tworzenia dodatkowych tabel w bazie danych.

Utwórzmy nową tabelę i skonfigurujmy kolumny zgodnie z określonymi warunkami. Zoptymalizuje to strukturę danych i uprości późniejszą pracę z informacjami. Prawidłowa konfiguracja kolumn zapewni wygodny dostęp do danych i zwiększy wydajność ich przetwarzania.

Aby ustanowić relację między kolumną kursu a tabelą kursów, przejdź do sekcji „Ograniczenia”. i wybierz „Klucz obcy”. Następnie kliknij przycisk „Dodaj”, aby utworzyć nowe ograniczenie.

Nazwij ograniczenie, jak chcesz – nie wpłynie to na jego funkcjonalność. Następnie połącz kolumny: w polu „Kolumna lokalna” wpisz „Określ wartość kursu”, w sekcji „Odniesienia do” wybierz tabelę kursów, a w polu „Kolumna zależna” wpisz „id_kursu”. W ten sposób pomyślnie utworzyłeś i połączyłeś obie tabele.

Aby uzyskać informacje z tego samego serwera, możesz użyć języka SQL. SQL pozwala na efektywną interakcję z bazami danych, wykonując różne operacje, takie jak wybieranie, aktualizowanie i usuwanie danych. Za pomocą zapytań SQL możesz pobrać wymagane dane, filtrować je według określonych kryteriów i wykonywać funkcje agregujące w celu analizy informacji. Dzięki temu SQL jest potężnym narzędziem do pracy z dużymi wolumenami danych na serwerze, zapewniającym szybkie i dokładne przetwarzanie zapytań.

Co czytać i gdzie śledzić aktualności

Wielu doświadczonych programistów radzi korzystać z dokumentacji zamiast książek i istnieje ku temu kilka dobrych powodów. Po pierwsze, dokumentacja jest zawsze aktualna i aktualizowana o nowe wersje technologiczne, umożliwiając programistom dostęp do najbardziej aktualnych informacji. Po drugie, zawiera konkretne przykłady i praktyczne zalecenia, które mogą być przydatne podczas tworzenia oprogramowania. Po trzecie, dokumentacja jest zazwyczaj ustrukturyzowana tak, aby szybko znaleźć odpowiedzi na często zadawane pytania. Co więcej, studiowanie dokumentacji sprzyja głębszemu zrozumieniu narzędzi i bibliotek, co ostatecznie poprawia jakość kodu i przyspiesza proces tworzenia oprogramowania. Dlatego korzystanie z dokumentacji zamiast książek może znacznie poprawić efektywność szkoleń programistów i prac praktycznych. Oficjalna dokumentacja jest regularnie aktualizowana i zazwyczaj odzwierciedla najnowsze zmiany w projekcie. Chociaż książki stają się przestarzałe wraz z wydaniem nowych wersji oprogramowania, dokumentacja jest zawsze pod ręką (online lub w formacie PDF) i jest uporządkowana w wygodny sposób, co przyspiesza znalezienie odpowiedzi na pytania. A co najlepsze, jest darmowa. Oficjalny przewodnik PostgreSQL to cenne źródło informacji, przewyższające wszelkie książki dotyczące instalacji, konfiguracji i administrowania tym systemem zarządzania bazami danych. Wersja PDF dokumentu zawiera prawie 3000 stron, co czyni ją najbardziej wszechstronnym źródłem informacji. Żadna inna publikacja nie oferuje tak obszernego i dogłębnego omówienia zagadnień związanych z PostgreSQL. Literatura techniczna dotycząca PostgreSQL może być naprawdę przydatna. Niektóre podręczniki znacznie upraszczają proces nauki, stopniowo wprowadzając początkujących w temat i unikając zbędnych informacji na początkowym etapie. Takie podejście pozwala lepiej opanować podstawowe koncepcje i funkcje PostgreSQL, ułatwiając dalsze zgłębianie bardziej złożonych aspektów bazy danych. Istnieje wiele książek, które mogą przyciągnąć uwagę i wzbogacić doświadczenie. Dzieła te oferują unikalne pomysły i głębię, dlatego warto je przeczytać. Rozważ kilka polecanych pozycji, aby poszerzyć horyzonty i rozwinąć umiejętności. Każda z tych książek oferuje cenne informacje i inspirację, co czyni je niezbędnymi pozycjami w Twojej osobistej bibliotece. Nie przegap okazji, aby przeczytać te prace i pogłębić swoją wiedzę oraz rozwinąć krytyczne myślenie.

  • „PostgreSQL dla początkujących” — P. Luzanov, E. Rogov, I. Levshin.
  • „PostgreSQL: Podstawy języka SQL” — E. P. Morgunov.
  • „Optymalizacja zapytań w PostgreSQL” — G. Dobrovskaya, B. Novikov, A. Beylikova.
  • „Nauka PostgreSQL 10” — Salahaddin Dzhuba.

Krótki komentarz do ostatniego punktu. Chociaż książka „Nauka PostgreSQL 10” koncentruje się na dziesiątej wersji PostgreSQL, zawiera tak fundamentalne zasady, że pozostaje aktualna nawet dzisiaj, kiedy w momencie publikacji artykułu dostępna była wersja beta 16. Podstawowe koncepcje przedstawione w tej publikacji pomogą zarówno początkującym, jak i doświadczonym użytkownikom lepiej zrozumieć bazy danych PostgreSQL.

Śledź najnowsze wiadomości o PostgreSQL na oficjalnej stronie internetowej lub na koncie projektu na Twitterze. Zalecamy korzystanie z VPN do dostępu do Twittera. W przypadku pytań technicznych możesz skontaktować się z rosyjskojęzyczną społecznością na Telegramie pod adresem https://t.me/pgsql. Otrzymasz tam szybkie odpowiedzi i będziesz mieć możliwość dyskusji na bieżące tematy z innymi użytkownikami PostgreSQL.

Dowiedz się więcej o programowaniu i kodowaniu na naszym kanale na Telegramie. Subskrybuj, aby być na bieżąco z przydatnymi treściami i najnowszymi wiadomościami ze świata technologii.

Czytaj także:

  • Czym jest SQL: Jak działa, dlaczego jest potrzebny i jak z nim pracować
  • „Ukończyłem moduł kursu i zacząłem wysyłać CV”: Muzyk, który został Pythonistą
  • Python dla początkujących: Zastosowania i możliwości

Sąd orzekł zakaz działalności Meta Platforms Inc. w Rosji, związanej ze sprzedażą sieci społecznościowych Facebook i Instagram. Decyzja ta opiera się na oskarżeniach o działalność ekstremistyczną, która ma poważne konsekwencje dla użytkowników tych platform. Zakaz dotyczy nie tylko dostępu do sieci społecznościowych, ale także możliwości prowadzenia działalności gospodarczej i komunikacji w kraju.