PostgreSQL je výkonná a open source relační databázová platforma. Je škálovatelný na více platformách a je široce používaným a oblíbeným nástrojem. V tomto tutoriálu vám ukážeme, jak nainstalovat PostgreSQL na CentOS 7!
Jak PostgreSQL funguje?
PostgreSQL používá SQL pro relační dotazy a JSON pro nerelační dotazy. Jednou z výhod používání PostgreSQL je jeho obrovská podpora komunity! Jeho povaha open source znamená, že k růstu tohoto nástroje přispívá mnoho vývojářů.
PostgreSQL je škálovatelný, spolehlivý a doplněný pokročilými funkcemi optimalizace. Ve většině případů lidé předpokládají pokročilou optimalizaci a datové typy jsou podporovány pouze komerčními databázemi, jako je SQL Server a Oracle. Na rozdíl od tohoto přesvědčení PostgreSQL poskytuje toto vše a mnoho dalších pokročilých funkcí, díky čemuž je rozhodně cenným doplňkem vašeho VPS.
PostgreSQL je extrémně snadné začít používat a ovládat.
Zde si ukážeme, jak nainstalovat PostgreSQL na CentOS 7.
Důležité! CentOS Linux 8 dosáhl 31. 12. 2021 konce životnosti (EOL). I když je CentOS Linux 7 stále podporován, dosáhne EOL 30. 6. 2024. Doporučujeme to mít na paměti při výběru tohoto OS. Více si o tom můžete přečíst na jejich oficiálních stránkách.
PostgreSQL na CentOS 7 můžete nainstalovat pomocí jedné ze dvou metod:
- Nainstalujte PostgreSQL ze stávajících repozitářů CentOS
- Instalujte z úložiště PostgreSQL
Podívejme se na každou z těchto metod podrobněji:
První metoda – Instalace PostgreSQL na CentOS 7 pomocí repozitářů CentOS
Úložiště CentOS 7 obsahuje PostgreSQL. Všimněte si, že nemusí mít nejnovější verzi PostgreSQL. V době psaní tohoto článku je úložiště hostitelem PostgreSQL verze 9.2.15.
1. Přístup k vašemu serveru
Pamatujte, že před zahájením instalace PostgreSQL na CentOS 7 musíme získat přístup k našemu virtuálnímu soukromému serveru pomocí SSH. Pokud máte potíže, podívejte se na náš výukový program PuTTY
2. Nainstalujte PostgreSQL na CentOS 7
Instalace PostgreSQL z repozitářů CentOS 7 je jednoduchá. Začněte následujícím příkazem:
sudo yum install postgresql-server postgresql-contrib
Dokončení může chvíli trvat.
3. Inicializujte databázi
Po dokončení instalace můžete inicializovat databázi pomocí níže uvedeného příkazu:
sudo postgresql-setup initdb
4. Spusťte databázi
Po inicializaci databáze můžete databázi spustit pomocí:
sudo systemctl start postgresql
5. (Volitelné) Povolte PostgreSQL
Tím je instalace a inicializace naší databáze dokončena. V případě potřeby můžete nakonfigurovat PostgreSQL tak, aby se automaticky spustil při každém restartu systému.
sudo systemctl enable postgresql
Druhá metoda – Instalace PostgreSQL na CentOS 7 pomocí úložiště PostgreSQL
Pomocí této metody si můžete stáhnout jakoukoli nejnovější verzi PostgreSQL z oficiálních stránek. Verzi PostgreSQL si můžete vybrat z úložišť PostgreSQL yum. V současné době se jako nejnovější verze zobrazuje PostgreSQL verze 9.6.
1. Přístup k vašemu serveru
Stejně jako u předchozí metody musíme nejprve přistupovat k našemu serveru pomocí SSH.
2. Stáhněte si PostgreSQL pomocí Wget
Nyní si stáhneme PostgreSQL verze 9.6.3. Podobně si můžete stáhnout libovolnou verzi. To lze provést pomocí příkazu wget.
wget https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
To také vyžaduje správce RPM nebo RedHat Package Manager spolu s repozitáři EPEL (Extra Packages Enterprise Linux). To je vyžadováno pro další závislosti PostgreSQL.
3. Nainstalujte PosgreSQL na CentOS 7 pomocí staženého balíčku
To lze nainstalovat pomocí níže uvedeného příkazu:
sudo yum install pgdg-centos96-9.6-3.noarch.rpm epel-release
4. Aktualizujte Yum
Aktualizujte yum, aby se vaše změny projevily. Použijte k tomu níže uvedený příkaz:
sudo yum update
5. Dokončete instalační proces PostgreSQL pro CentOS 7
Tím jsou splněny naše předpoklady pro instalaci PostgreSQL. Dále to můžeme nainstalovat pomocí níže uvedeného příkazu:
sudo yum install postgresql96-server postgresql96-contrib
Tím je instalace PostgreSQL dokončena.
6. Inicializujte databázi
Dále můžete inicializovat databázi pomocí:
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
7. Restartujte PostgreSQL
PostgreSQL můžete restartovat pomocí:
sudo systemctl start postgresql-9.6
8. (Volitelné) Povolte spuštění PostgreSQL při restartu
V případě, že chcete, aby se PostgreSQL spustil při restartu systému automaticky, můžete volitelně použít níže uvedený příkaz:
sudo systemctl enable postgresql-9.6
Základní nastavení PostgreSQL
V Linuxu ve výchozím nastavení uživatel s názvem postgres se vytvoří po instalaci PostgreSQL. Heslo uživatele můžete změnit pomocí následujícího příkazu:
sudo passwd postgres
Budete vyzváni k zadání nového hesla dvakrát.
Dále se můžete přepnout na výzvu PostgreSQL a změnit heslo pro uživatele PostgreSQL postgres pomocí:
su - postgres
Pokud se zobrazí chyba, můžete uživateli nastavit platný shell pomocí následujícího příkazu:
su --shell /bin/bash postgres
Poté proveďte stejný příkaz:
su - postgres
Chcete-li změnit heslo, použijte níže uvedený příkaz, do kterého místo Nového hesla přidejte své nové heslo. :
psql -d template1 -c "ALTER USER postgres WITH PASSWORD 'NewPassword';"
Do klientského prostředí PostgreSQL se můžete přepnout pomocí:
psql postgres
Zde můžete zkontrolovat seznam dostupných příkazů zadáním \h . Můžete použít \h následovaný příkazem, pro který potřebujete další informace. Pro opuštění prostředí můžete napsat \q .
Příkaz createdb umožňuje vytvářet nové databáze. Předpokládejme, že chceme vytvořit novou databázi s názvem testDB pomocí postgres uživatel Linuxu. Příkaz, který bychom použili, by vypadal takto:
createdb testDB
Novou roli můžete vytvořit pomocí příkazu createuser. Níže je příklad, kdy vytváříme roli s názvem samplerole pomocí uživatele postgres Linux.
createuser samplerole –pwprompt
Zde budete vyzváni k nastavení hesla pro uživatele.
Volitelně můžete přiřadit vlastnictví naší nově vytvořené databáze konkrétnímu uživateli nebo roli postgresu. To lze provést příkazem, jako je tento:
createdb testDB -O samplerole
Ve výše uvedeném příkazu nahraďte samplerole rolí, kterou chcete použít.
K této nové databázi se můžete připojit pomocí příkazu níže:
psql testDB
V případě, že chcete k přihlášení použít konkrétního uživatele nebo roli, použijte níže uvedený příkaz:
psql testDB -U samplerole
To vás vyzve k zadání hesla.
Můžete použít \l nebo \list příkazy pro zobrazení všech databází. Chcete-li zjistit aktuální databázi, kterou používáte, můžete použít \c . V případě, že chcete více informací o připojeních, jako je soket, port atd., můžete použít \conninfo .
Databázi můžete také zrušit nebo odstranit pomocí dropdb příkaz. Než to však uděláte, nezapomeňte si ověřit, co smažete. Smazané databáze nelze obnovit.
Chcete-li odstranit databázi, můžete použít:
dropdb testDB
PostgreSQL podobně jako jiné databáze umožňuje:
- Vytvoření tabulky
- Smazání tabulky
- Aktualizace tabulek
- Přidání sloupce
- Vypustit sloupec
- Zadejte dotaz na tabulku
- Změňte příkazy
- Udělit oprávnění
Syntaxe všech těchto příkazů je podobná jako u většiny databázových příkazů. Všechny tabulky můžete vypsat pomocí \dt příkaz. Chcete-li zobrazit všechny role, použijte \du příkaz. Chcete-li se dozvědět více, doporučujeme vám přečíst si oficiální dokumentaci!
Závěr
Tímto jsme vám ukázali instalaci PostgreSQL v CentOS 7 a také vás provedli základním nastavením PostgreSQL. Existuje několik věcí, které se lze v PostgreSQL ještě naučit. Toto je výchozí bod, odtud můžete začít prozkoumávat více o příkazech PostgreSQL.