PostgreSQL je bezplatný a otevřený systém pro správu databází se zaměřením na rozšiřitelnost a shodu s SQL. PostgreSQL je pokročilý RDBMS (systém správy relačních databází) podnikové třídy, který podporuje dotazování SQL (relační) i JSON (nerelační).
Jedná se o vysoce stabilní systém pro správu databází podporovaný více než 20 lety vývoje komunitou s otevřeným zdrojovým kódem a mezi vývojáři a správci systému má dobrou pověst pro svou spolehlivost, flexibilitu, robustnost funkcí a výkon.
PostgreSQL se používá jako primární databáze pro webové aplikace, mobilní aplikace a analytické aplikace. Někteří významní uživatelé PostgreSQL po celém světě jsou Reddit, Skype, Instagram, Disqus, The Guardian, Yandex, Bloomberg, Nokia, BMW atd.
V této příručce se dozvíte, jak nainstalovat databázi PostgreSQL na Rocky Linux, jak zabezpečit nasazení databáze PostgreSQL a základní použití PostgreSQL dotazů pro správu uživatelů a databází.
Předpoklady
- Systém Rocky Linux.
- Uživatel s oprávněními root nebo sudo. Tento uživatel bude použit pro instalaci nových balíčků a provádění změn v celém systému.
Přidání úložiště PostgreSQL
V této příručce budete instalovat nejnovější stabilní verzi PostgreSQL v13.4. Tato verze je k dispozici v oficiálním úložišti PostgreSQL, takže musíte do systému Rocky Linux přidat úložiště PostgreSQL.
1. Spuštěním následujícího příkazu přidejte oficiální úložiště PostgreSQL pro systém Rocky Linux.
instalace sudo dnf -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2. Dále spusťte následující příkaz níže, abyste ověřili dostupnost úložiště PostgreSQL ve vašem systému.
sudo dnf -qy repolist
Pokud je ve vašem systému dostupné úložiště PostgreSQL, uvidíte několik verzí úložišť PostgreSQL jako snímek obrazovky níže.
Instalace PostgreSQL 13 na Rocky Linux
Abyste mohli nainstalovat PostgreSQL z oficiálního úložiště PostgreSQL (nikoli z úložiště Rocky Linux), musíte deaktivovat vestavěný modul úložiště PostgreSQL.
1. Provedením následujícího příkazu deaktivujte vestavěné úložiště modulů PostgreSQL.
modul sudo dnf -qy zakáže postgresql
Příkaz spustí příkaz DNF v tichém režimu a přijme všechny klíče gpg (volba -qy ) pro úložiště PostgreSQL.
2. Poté nainstalujte nejnovější verzi PostgreSQL 13.4 z úložiště PostgreSQL pomocí příkazu dnf níže.
instalace sudo dnf postgresql13-server
Zadejte „y “ a stiskněte „Enter ' k instalaci PostgreSQL 13.x.
Poté počkejte na instalaci PostgreSQL.
Inicializace databáze PostgreSQL
Poté, co je instalace PostgreSQL dokončena, musíte inicializovat konfiguraci PostgreSQL a poté spustit a povolit službu PostgreSQL.
1. Spusťte následující příkaz pro inicializaci konfigurace databáze PostgreSQL.
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
2. Poté spusťte a povolte službu PostgreSQL pomocí příkazu níže.
sudo systemctl povolit postgresql-13
sudo systemctl spustit postgresql-13
Nyní je služba PostgreSQL aktivní a běží a poběží automaticky při každém spuštění.
3. Nyní spusťte níže uvedený příkaz pro ověření služby PostgreSQL.
sudo systemctl status postgresql-13
Pokud je spuštěna vaše služba PostgreSQL, uvidíte zelený výstup, například "aktivní (spuštěno)" jak je uvedeno níže. V opačném případě uvidíte červený výstup, například „selhalo " za protokoly chybových zpráv.
Zabezpečení nasazení PostgreSQL
Během instalace PostgreSQL vytvoří nového systémového uživatele a uživatelské jméno databáze jako „postgres ". A pro tuto fázi budete nastavovat nové heslo pro "postgres ", oba pro uživatele systému a uživatel databáze .
1. Změňte heslo pro výchozího systémového uživatele "postgres " pomocí následujícího příkazu.
passwd postgres
Nyní zadejte nové heslo pro systémového uživatele "postgres ".
."2. Dále pro změnu hesla pro "postgres " uživatel databáze, musíte se přihlásit do prostředí PostgreSQL.
Nejprve se přihlaste jako systémový uživatel "postgres " pomocí následujícího příkazu.
su - postgres
Nyní se přihlaste do prostředí PostgreSQL pomocí příkazu psql níže.
psql
Provedením následujícího dotazu vytvořte nové heslo pro výchozí „postgres " uživatel databáze.
ZMĚŇTE UŽIVATELE postgres POMOCÍ HESLA 'strongpostgrespassword';
Nyní zadejte exit a stiskněte Ctrl+d “ pro ukončení a odhlášení z 'postgres ' uživatelský shell.
Změnit metodu ověřování
Ve výchozím nastavení se místní uživatelé PostgreSQL připojí k prostředí PostgreSQL pomocí metody „peer“. Metoda peer autentizace bude fungovat pouze pro místní připojení. Ve vývojovém prostředí můžete použít tento typ ověřování, ale pro produkční použití zvažte použití metody ověřování založenou na hesle.
V této fázi se naučíte, jak změnit výchozí metodu peer autentizace na ověřování heslem pomocí 'scram-sha-256 '.
1. Nejprve se přihlaste do prostředí PostgreSQL pomocí následujícího příkazu.
sudo -u postgres psql
Nyní proveďte následující dotaz a zkontrolujte umístění konfigurace PostgreSQL 'pg_hba.conf '.
ZOBRAZIT hba_file;
ZOBRAZIT heslo_šifrování;
Uvidíte výstup jako níže.
Všimněte si, že konfigurace PostgreSQL "pg_hba.conf" se nachází na '/var/lib/pgsql/13/data ' a výchozí šifrování hesla pro PostgreSQL na operačním systému založeném na RHEL je 'scram-sha-256 '.
Nyní zadejte '\q' pro ukončení a ukončení prostředí PostgreSQL.
2. Dále změňte pracovní adresář na '/var/lib/pgsql/13/data a upravte konfiguraci 'pg_hba.conf pomocí nano editoru.
cd /var/lib/pgsql/13/data/
nano pg_hba.conf
V dolní části řádku změňte místní metodu ověřování na 'scram-sha-256 ' jak je uvedeno níže.
# Typ Metoda Uživatelské adresy databáze
# „Local“ je pouze pro připojení soketu UNIX domény pouze
Local All ALL SCRAM-SHA-256
# IPv4 Local Connections:
hostitel všechny vše 127.0.0.1/32 scram-sha-256
# IPv6 místní připojení:
s cra 2 6Nyní stiskněte 'Ctrl+x “, zadejte „y “ a stiskněte „Enter " pro uložení a ukončení.
Pomocí této konfigurace budete vyzváni k zadání hesla pro přihlášení do prostředí PostgreSQL.
3. Dále použijte novou konfiguraci restartováním služby PostgreSQL pomocí následujícího příkazu.
sudo systemctl restart postgresql-13Nyní pokaždé, když chcete přistupovat do prostředí PostgreSQL, musíte zadat heslo pro ověření.
4. Abyste se ujistili o konfiguraci ověřování hesla, přihlaste se do prostředí PostgreSQL pomocí následujícího příkazu.
su - postgres
psqlNyní budete požádáni o heslo pro výchozího uživatele 'postgres '.
Zadejte heslo pro 'postgres ' uživatele databáze a stiskněte 'Enter '. Pokud je vaše heslo správné, uvidíte shell PostgreSQL následovně. V opačném případě se zobrazí 'FATAL ' chyba, protože heslo je nesprávné.
Navíc můžete použít jednořádkový příkaz k přihlášení do prostředí PostgreSQL, jak je uvedeno níže.
# Přihlásit se jako výchozí uživatel "postgres"
sudo -u postgres psql
# Přihlásit se jako jiný uživatel
sudo -u postgres psql -U uživatelské jméno
Vytvoření nového uživatele a databáze pro vaši aplikaci
V této fázi se naučíte, jak vytvořit nového uživatele a databázi na PostgreSQL.
1. Přihlaste se do prostředí PostgreSQL spuštěním příkazu níže.
sudo -u postgres psqlNyní zadejte heslo pro uživatele PostgreSQL 'postgres '.
2. Spusťte níže uvedený dotaz PostgreSQL a vytvořte nového uživatele 'johndoe' s heslem 'johndoestrongpassword' a dejte uživateli oprávnění k vytvoření nové databáze a role.
VYTVOŘTE UŽIVATELE johndoe POMOCÍ
CREATEDB
CREATEROLE
HESLEM 'johndoestrongpassword';
Poté ověřte nového uživatele pomocí následujícího dotazu.
\duNyní uvidíte nového uživatele 'johndoe' se seznamem rolí 'Vytvořit roli a 'Vytvořit databázi ' jak je uvedeno níže.
3. Dále pro vytvoření nové uživatelské databáze na PostgreSQL spusťte následující dotaz.
VYTVOŘIT DATABÁZI VLASTNÍK johndoe johndoe;Nyní ověřte novou databázi pomocí následujícího dotazu.
\lA uvidíte novou databázi 'johndoe' s vlastníkem 'johndoe' jako snímek obrazovky níže.
Vytvoření tabulky a vložení dat
Po vytvoření nové databáze a uživatele se naučíte, jak vytvořit tabulku, zadávat data a zobrazovat data z databáze.
1. Nyní se přihlaste do prostředí PostgreSQL jako uživatel 'johndoe' pomocí následujícího příkazu.
su - postgres
psql -U johndoeNebo můžete použít jednořádkový příkaz, jak je uvedeno níže.
sudo -u postgres psql -U johndoeNyní zadejte heslo pro uživatele PostgreSQL 'johndoe “ a stiskněte „Enter ' pro přihlášení.
Jak můžete vidět na snímku obrazovky, jste nyní přihlášeni do prostředí PostgreSQL v databázi 'johndoe=> '.
2. Nyní proveďte následující dotaz a vytvořte novou tabulku 'uživatelé' s některými sloupci 'id, jméno, věk, adresa a plat'.
Uživatelé CREATE TABLE (
id INT PRIMARY KEY NOT NULL,
jméno TEXT NOT NULL,
věk INT < NOT NULL, CH /> NOT NULL, CH /> adresa plat SKUTEČNÝ
);Chcete-li zobrazit dostupné tabulky v aktuální databázi, použijte '\d ' dotaz jako 'popsat ' jak je uvedeno níže.
\dChcete-li zobrazit sloupce v tabulce, můžete použít stejný dotaz za názvem tabulky jako níže.
\d uživatelůNíže je podobný výstup, který získáte.
3. Dále přidejte do tabulky nová data pomocí 'vložit ' dotaz, jak je uvedeno níže.
INSERT INTO users (id,name,age,address,plat) VALUES (1, 'Paul', 32, 'California', 20000.00);
INSERT INTO users (id,name,age,address, plat) VALUES (2, 'Jesse', 35, 'Mexiko', 30000,00);
INSERT INTO users (id,name, age,address,plat) VALUES (3, 'Linda', 27, 'Canada' , 40000,00);
4. Poté můžete zobrazit všechna dostupná data pomocí 'vybrat ' dotaz, jak je uvedeno níže.
SELECT * FROM users;Možnost '*' vypíše všechny sloupce v tabulce.
Chcete-li určit sloupec, můžete použít 'vybrat ' dotaz, jak je uvedeno níže.
VYBERTE jméno, věk, plat FROM uživatelů;Uvidíte podobný výstup jako níže.
Závěr
Gratulujeme! Nyní jste se naučili, jak nainstalovat PostgreSQL na Rocky Linux. Také jste se naučili, jak nasadit PostgreSQL bezpečným způsobem (minimálně), a základní použití PostgreSQL dotazů pro správu uživatelů, databází a tabulek.
Jak nainstalovat WordPress s LAMP a zdarma Lets Encrypt SSL na Rocky Linux Jak nainstalovat nejnovější PHP 8 na Rocky LinuxRocky Linux