PostgreSQL je populární celosvětově používaná open-source databáze. Je k dispozici pro Linux včetně dalších běžných operačních systémů, jako jsou macOS, Windows 10/7 a BSD. Zde nainstalujeme a nakonfigurujeme nejnovější verzi PostgreSQL na AlmaLinux nebo Rocky Linux 8.
PostgreSQL implementuje standard SQL 2008 velmi komplexně. Kromě běžných datových typů umí databáze nativně zpracovávat i XML a verzi 9.2 s daty ve formátu JSON. Postgres je založen na typickém modelu klient-server:Centrální serverová komponenta s názvem ” postmaster ” spravuje všechny databázové soubory a všechna připojení, která jsou vytvořena pro komunikaci (vstup a výstup) s databázovým serverem.
Stejně jako MYSQL potřebuje uživatel pouze klientský program pro připojení a zahájení vytváření databáze přes příkazový řádek nebo integrovaný terminál. Zatímco pro grafické zpracování MariaDB nebo MySQL máme jednoduchou webovou aplikaci phpMyAdmin a stejně tak máme grafické uživatelské rozhraní i pro PostgreSQL – jako je pgAdmin nebo phpPgAdmin, které lze volitelně nainstalovat a používat.
Zde v této příručce vám dáme vědět, jak nainstalovat PostgreSQL databázový server a pgAdmin webové rozhraní GUI na AlmaLinux 8 nebo Rocky Linux.
Jak nainstalovat PostgreSQL na AlmaLinux 8 a Rocky
Při psaní tohoto návodu byla nejnovější verze PostgreSQL 13 a vývoj 14 . Tento návod však můžete použít bez ohledu na to, jaká je aktuální stabilní verze, vždy získáte tu nejnovější. Také můžete použít následující kroky pro systémy CentOS a RHEL 8.
1. Přidejte PostgreSQL Yum Repository
Výchozí verze PostgreSQL, kterou lze nainstalovat v AlmaLinux nebo Rocky repo, je verze 10. Abychom si mohli stáhnout nejnovější verzi, musíme přidat její oficiální úložiště na naše linuxové systémy založené na RPM.
sudo dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2. Zakázat výchozí modul
Verze je k dispozici pro instalaci z výchozího modulu PostgreSQL systému je 10, proto ji musíme deaktivovat, abychom mohli získat nejnovější dostupnou verzi.
sudo dnf -qy module disable postgresql
2. Spusťte aktualizaci systému
Chcete-li dát systému vědět o nově přidaném úložišti PostgreSQL yum, spusťte příkaz system update, který také přidá požadované klíče GPG.
sudo dnf update -y
3. Nainstalujte klienta a server Postgresql na AlmaLinux nebo Rocky
Pomocí níže uvedeného příkazu můžeme nainstalovat nejnovější dostupnou verzi databáze PostgreSQL, pokud však chcete nějakou starou nebo aktuální při čtení tohoto článku poté nahraďte verzi číslo zadaný v níže uvedeném příkazu:
sudo dnf install postgresql13 postgresql13-server
4. Inicializujte databázi
Po dokončení instalace použijte initdb
který vytvoří nový databázový cluster PostgreSQL, odkazuje na kolekci databází spravovaných jednou instancí serveru. Inicializace databáze vytvoří adresáře a vygeneruje tabulky, aby poskytla správnou strukturu, kde budou vaše data uložena.
sudo /usr/pgsql-*/bin/postgresql-*-setup initdb
Poznámka :Pokud máte nainstalovaných více verzí a chcete inicializovat některé konkrétní z nich, nahraďte *
ve výše uvedeném příkazu s číslem verze , například pro verzi 11 , výše uvedený příkaz bude:
sudo /usr/pgsql-11/bin/postgresql-11-setup initdb
5. Povolte a spusťte službu PostgreSQL
Nyní povolme a spusťte databázovou službu, aby se mohla automaticky spouštět při spouštění systému.
sudo systemctl start postgresql-13 sudo systemctl enable postgresql-13
Chcete-li potvrdit, že vše funguje správně, zkontrolujte stav jeho služby-
sudo systemctl status postgresql-13
6. Zabezpečená výchozí databáze PostgreSQL
Abyste se ujistili, že je náš PostgreSQL zabezpečen silným heslem, nastavte heslo pro jeho systémového uživatele a poté výchozí uživatelský účet správce databáze pomocí níže uvedených příkazů-
Změnit uživatelské heslo
passwd postgres
Přihlaste se pomocí systémového účtu Postgres-
su - postgres
Nyní změňte heslo administrátorské databáze-
psql -c "ALTER USER postgres WITH PASSWORD 'your-password';"
Poznámka :Nahraďte your-password
ve výše uvedeném s bezpečným heslem, které chcete nastavit pro uživatele databáze admin.
7. Postgres server Metoda autentizace – jen pro poznání
Postgres nabízí několik autentizačních metod, které můžeme použít pro jeho server k připojení klienta k přístupu k databázím, jako je Trust, Password, GSSAPI Authentication a další… Můžete se o nich dozvědět v oficiálních dokumentech. Ve výchozím nastavení však bude používat ověřování pomocí hesla, které dále nabízí několik metod k bezpečnému ověření databázových serverů, jako je scram-sha-256, md5, aheslo. Ve výchozím nastavení bude používat nejbezpečnější - scram-sha-256, kterou můžete nastavit na jinou, pokud chcete.
V případě, že chcete změnit, stačí upravit pg_hba.conf
a nahraďte scram-sha-256
s jinými metodami, jako je md5
.
nano /var/lib/pgsql/13/data/pg_hba.conf
Dobře, nemusíte soubor upravovat, pokud nevíte, co děláte , tedy pokud si tím nejste jisti, a poté přejděte na výchozí nastavení.
8. Příklad vytvoření databáze
Řekněme, že chcete vytvořit databázi na PostgreSQL pro použití s nějakou aplikací, pak zde jsou příkazy, jak to udělat-
Přihlaste se pomocí systémového uživatele Postgre-
su - postgres
psql
Vytvořte nového uživatele. Zde vytváříme demo uživatel chráněn heslem . Změňte je.
CREATE USER demo WITH PASSWORD 'password';
Vytvořit novou databázi PostgreSQL-
CREATE DATABASE h2sdb;
Nyní udělme všechna práva a výsady na vytvořené databázi uživateli:
GRANT ALL ON DATABASE h2sdb TO demo;
Vlastníkem databáze však stále bude výchozí správce uživatel PostgreSQL pro změnu můžete použít příkaz-
Syntax: ALTER DATABASE database_name OWNER TO user-name; Example: ALTER DATABASE h2sdb OWNER TO demo;
Chcete-lizkontrolovat a potvrdit zda byla databáze vytvořena nebo ne, jednoduše napište
\l
Získáte následující druh výstupu
Nyní je váš databázový server připraven, pojďme si nainstalovat grafické uživatelské rozhraní pro jeho pohodlnou správu.
Jak nainstalovat pgAdmin4 na AlmaLinux nebo Rocky
1. Přidejte úložiště pgAdmin
Deaktivujte společné úložiště PostgreSQL, abyste získali nejnovější balíčky PGAdmin 4:
sudo dnf install yum-utils sudo yum-config-manager --disable pgdg-common
nyní spusťte příkaz k zahrnutí úložiště:
sudo rpm -i https://ftp.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-redhat-repo-2-1.noarch.rpm
2. Spusťte aktualizaci systému a nainstalujte pgAdmin4
sudo dnf update -y
sudo dnf install pgadmin4
3. Spusťte Webserver na AlmaLinux nebo Rocky
sudo systemctl enable --now httpd
Zkontrolujte stav-
sudo systemctl status httpd
4. Nakonfigurujte webovou službu pgAdmin
Spolu s balíčky pgAdmin4 je dodáván skript, stačí jej spustit, abychom nakonfigurovali web pgAdmin. To se vás zeptá na několik věcí, jako je e-mail, heslo, které pro něj chcete nastavit při konfiguraci SELinuxu a vytváření adresářů úložiště a protokolů.
sudo /usr/pgadmin4/bin/setup-web.sh
5. Přihlásit se do webového rozhraní pgAdmin4
Otevřete prohlížeč a přejděte na adresu IP serveru s názvem složky pgadmin4.
Příklad: http://ip-server-ip/pgadmin4
6. Přidejte PostgreSQL server do pgAdmin
Uvidíte, že ve výchozím nastavení není k pgAdmin připojen žádný databázový server, takže připojte ten, který jsme vytvořili v tomto tutoriálu, nebo jakýkoli jiný vzdálený, který máte.
Krok 1: Klikněte na Přidat nový server ikona
Krok 2: Dejte svému serveru nějaké jméno, aby jej bylo možné později snadno identifikovat.
Krok 3: Vyberte Připojení Tab.
Krok 4: Jako hostitel zadejte- localhost a poté zadejte uživatelské jméno a heslo databáze chcete připojit. Můžeme však použít výchozí, který je postgres toto heslo správce jste zde nastavili v Kroku 6 tohoto tutoriálu.
Krok 5: Klikněte na tlačítko Uložit tlačítko.
Volitelný krok
Pokud jstenainstalovali PostgreSQL na nějaký vzdálený server pak je také potřeba nastavit SSH tunel. Klikněte na jeho TAB a přidejte IP adresu serveru spolu s uživatelským jménem a heslo otevřít tunel.
7. pgAdmin4 Dashboard- GUI rozhraní pro správu databáze
Nyní máme grafické uživatelské rozhraní pro správu všech našich PostgreSQL databází a uživatelů bez zadávání jakýchkoli příkazů. Můžete také sledovat zatížení databáze přímo z pgAdmin Dashboard
Úvahy na závěr:
Snažili jsme se udělat tutoriál co nejjednodušší, přesto, pokud narazíte na nějaký problém při nastavování PostgreSQL a pgAdmin na AlmaLinux nebo Rocky Linux 8; pak nám dejte vědět, sekce komentářů je celá vaše.