Wyszukiwanie w witrynie

Co to jest PostgreSQL? Jak działa PostgreSQL?


PostgreSQL to najbardziej zaawansowany na świecie system zarządzania bazami danych typu open source klasy korporacyjnej, opracowany przez PGlobalną grupę deweloperską PostgreSQL. Jest to potężny i wysoce rozszerzalny, obiektowo-relacyjny system baz danych SQL (Structured Query Language), popularny ze względu na niezawodność, solidność funkcji i wysoką wydajność. Wiadomo, że jest wysoce skalowalny zarówno pod względem ilości danych, które może przechowywać i zarządzać, jak i liczby jednoczesnych użytkowników, które może obsłużyć.

PostgreSQL jest dostępny i rozpowszechniany na podstawie Licencji PostgreSQL, liberalnej licencji typu open source. Oznacza to, że możesz pobrać oprogramowanie, używać, modyfikować i rozpowszechniać je bezpłatnie w dowolnym celu. Jest również wieloplatformowy, działa na systemach Linux, Windows i macOS oraz wielu innych systemach operacyjnych.

Pobierz PostgreSQL

  • Pobierz PostgreSQL 12

Wykorzystuje i rozszerza język SQL o wiele zaawansowanych i nowoczesnych funkcji. Chociaż jest zgodny z SQL i obsługiwanych jest wiele funkcji wymaganych przez standard SQL (najnowsza wersja PostgreSQL to 12 w chwili pisania tego tekstu, potwierdza co najmniej 160 ze 179 obowiązkowych funkcji SQL), istnieją pewne niewielkie różnice w składnia lub funkcja.

Jak działa PostgreSQL?

PostgreSQL wykorzystuje model klient-serwer, w którym klient i serwer mogą znajdować się na różnych hostach w środowisku sieciowym. Program serwera zarządza plikami bazy danych, akceptuje połączenia z bazą danych z aplikacji klienckich. Może obsłużyć wiele jednoczesnych połączeń od klientów poprzez „forkowanie” nowego procesu dla każdego połączenia. Wykonuje żądania bazy danych od klientów i wysyła wyniki z powrotem do klientów. Klienci zdalni mogą łączyć się z serwerem przez sieć lub Internet.

Prawidłowe programy klienckie obejmują narzędzia tekstowe dostarczane z PostgreSQL, narzędzie graficzne lub aplikacje opracowane przy użyciu innych języków programowania.

Kluczowe cechy PostgreSQL

PostgreSQL obsługuje kilka typów danych, w tym prymitywne (takie jak ciąg znaków, liczba całkowita, numeryczna i logiczna), strukturalne (takie jak data/godzina, tablica, zakres i UUID), dokumenty (JSON, JSONB, XML , klucz-wartość (Hstore)), geometrię (punkt, linia, okrąg i wielokąt) oraz dostosowania (typy złożone i niestandardowe). Obsługuje integralność danych za pomocą takich funkcji, jak UNIQUE, NOT NULL, klucze podstawowe i obce, ograniczenia wykluczające, blokady jawne i doradcze.

  • Jest zbudowany z myślą o współbieżności i wydajności przy użyciu wielu funkcji, które obejmują indeksowanie i zaawansowane indeksowanie, transakcje i transakcje zagnieżdżone, kontrolę współbieżności wielu wersji (MVCC), równoległość zapytań odczytujących i budowanie indeksów B-drzewa, partycjonowanie tabel, Just-In- Kompilacja wyrażeń w czasie (JIT) i nie tylko.
  • Aby zapewnić niezawodność, redundancję danych, wysoką dostępność i odzyskiwanie po awarii, PostgreSQL oferuje funkcje, takie jak rejestrowanie z wyprzedzeniem (WAL), replikacja master-slave, aktywne stany gotowości i odzyskiwanie do punktu w czasie (PITR) i wiele więcej . Wszystkie te rozwiązania umożliwiają wdrożenie wielowęzłowego klastra bazy danych, który może przechowywać duże ilości (terabajty) danych i zarządzać nimi, a także wyspecjalizowane systemy zarządzające petabajtami.
  • Co ważne, PostgreSQL jest również bardzo rozszerzalny na wiele sposobów. Aby go rozszerzyć, możesz użyć funkcji i procedur składowanych, języków proceduralnych, w tym PL/PGSQL, Perl, Python, wyrażeń ścieżek SQL/JSON, obcych opakowań danych i nie tylko. Możesz także rozszerzyć jego podstawową funkcjonalność, korzystając z wielu rozszerzeń opracowanych przez społeczność.
  • Bezpieczeństwo jest również sercem Postgres. Aby chronić Twoje bazy danych, oferuje różne formy uwierzytelniania (w tym GSSAPI, SSPI, LDAP, SCRAM-SHA-256, certyfikat itp.), solidny system kontroli dostępu, zabezpieczenia na poziomie kolumn i wierszy, a także wielo- uwierzytelnianie czynnikowe za pomocą certyfikatów i dodatkowej metody. Jednakże dobre zabezpieczenie serwera bazy danych powinno zawsze zaczynać się od warstwy sieciowej i serwerowej.

Klienci i narzędzia PostgreSQL

PostgreSQL udostępnia i obsługuje wiele aplikacji klienckich do administrowania bazami danych, takich jak interaktywne narzędzie wiersza poleceń psql i pgadmin, oparty na PHP interfejs sieciowy do administrowania bazami danych (który jest najbardziej ulubiony sposób).

Aby używać baz danych PostgreSQL do przechowywania danych dla aplikacji, możesz połączyć swoje aplikacje przy użyciu dowolnej obsługiwanej biblioteki lub sterownika dostępnego dla najpopularniejszych języków programowania. libpq to popularny interfejs programisty aplikacji C do PostgreSQL, będący silnikiem bazowym dla kilku innych interfejsów aplikacji PostgreSQL.

Kto korzysta z PostgreSQL?

PostgreSQL jest używany w RedHat, Debian, Apple, Sun Microsystem, Cisco i wielu innych firmach i organizacjach.

Zapoznaj się z tymi powiązanymi przewodnikami dotyczącymi konfigurowania aplikacji z bazą danych PostgreSQL w systemie Linux.

  • Jak zainstalować PostgreSQL w RHEL 8
  • Jak zainstalować PostgreSQL i pgAdmin w CentOS 8
  • Jak zainstalować bazę danych PostgreSQL w Debianie 10
  • Jak zainstalować PgAdmin 4 Debian 10
  • Jak zainstalować i używać PostgreSQL na Ubuntu 18.04
  • Jak zainstalować PostgreSQL z PhpPgAdmin na OpenSUSE