phpPgAdmin je webový administrační nástroj pro správu PostgreSQL databáze a jeho vzhled a chování jsou velmi podobné phpMyAdminu. Pokud máte pracovní zkušenosti s phpMyAdminem, nezabere vám mnoho času hledání způsobu práce s phpPgAdmin.
Tato příručka vám pomůže nastavit phpPgAdmin 5.6 na CentOS 7 / RHEL 7.
Předpoklady
Za předpokladu, že jste již na svém systému nainstalovali PostgreSQL. Pokud ne, podívejte se, jak nainstalovat PostgreSQL 11 / 10 na CentOS 7 / RHEL 7.
Nainstalujte závislé balíčky pro phpPgAdmin.
yum install -y php php-cli php-common php-pdo php-pgsql httpd apr apr-util httpd-tools libzip mailcap
Nainstalujte phpPgAdmin
phpPgAdmin dostupný v úložišti EPEL nepodporuje PostgreSQL 10 a vyšší.
Chyba:
Verze PostgreSQL není podporována. Upgradujte na verzi nebo novější.
Nastavíme tedy phpPgAdmin pomocí balíčku ke stažení z oficiálních stránek.
Stáhněte si nejnovější verzi phpPgAdmin. Preferováno by bylo stažení tarovaného souboru.
wget https://github.com/phppgadmin/phppgadmin/archive/REL_5-6-0.tar.gz
Rozbalte stažený archiv pomocí příkazu tar.
tar -zxvf REL_5-6-0.tar.gz
Přesuňte extrahované soubory do /usr/share/phppgadmin
adresář.
mv phppgadmin-REL_5-6-0/ /usr/share/phppgadmin
Nakonfigurujte phpPgAdmin
Zkopírujte konfigurační soubor pro zahájení konfigurace phpPgAdmin.
mv /usr/share/phppgadmin/conf/config.inc.php-dist /usr/share/phppgadmin/conf/config.inc.php
Upravte /etc/phpPgAdmin/config.inc.php
soubor.
vi /usr/share/phppgadmin/conf/config.inc.php
Nastavte název své instance PostgreSQL. Toto nastavení zobrazí název vaší instance ve webovém rozhraní phpPgAdmin.
$conf['servers'][0]['desc'] = 'PostgreSQL 11';
Přidejte localhost nebo IP adresu vaší instance PostgreSQL do následujícího parametru serveru.
$conf['servers'][0]['host'] = 'localhost';
Pokud je zvláštní zabezpečení přihlášení pravdivé, pak se přihlašuje přes phpPgAdmin bez hesla nebo určitých uživatelských jmen (pgsql, postgres, root, administrator ) bude zamítnuto. Chcete-li povolit přihlášení postgres, změňte jej na false.
$conf['extra_login_security'] = false;
Chcete-li jednoduše skrýt databáze ostatních (vlastněné ostatními) v seznamu, nastavte následující podmínku na pravdivou.
$conf['owned_only'] = true;
Konfigurace PostgreSQL
Budeme muset povolit ověřování MD5 na PostgreSQL, abychom mohli spravovat instance PostgreSQL z phpPgAdmin a také vytvářet připojení z externích počítačů.
Povolení ověřování MD5 zvyšuje zabezpečení a umožňuje pouze přihlášení pomocí šifrovaného hesla. Upravte konfigurační soubor tak, aby akceptoval ověření MD5.
### PostgreSQL 11 ### vi /var/lib/pgsql/11/data/pg_hba.conf ### PostgreSQL 10 ### vi /var/lib/pgsql/10/data/pg_hba.conf
Zadejte hodnotu podle vašich požadavků v připojeních IPv4. Ujistěte se, že přijímá hesla MD5.
# TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all all all md5Použijte 192.168.1.0/24 místo všech v ADDRESS pro povolení ověřování MD5 pro konkrétní podsíť IP adres.
Restartujte službu PostgreSQL.
### PostgreSQL 11 ### systemctl restart postgresql-11 ### PostgreSQL 10 ### systemctl restart postgresql-10
Nakonfigurujte Apache
Vytvořte konfigurační soubor pod /etc/httpd/conf.d
adresář, aby Apache mohl obsluhovat rozhraní phpPgAdmin.
vi /etc/httpd/conf.d/phppgadmin.conf
Zkopírujte a vložte níže uvedený obsah do výše uvedeného souboru.
Alias /phppgadmin /usr/share/phppgadmin <Location /phppgadmin> <IfModule mod_authz_core.c> # Apache 2.4 Require all granted #Require host example.com </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order deny,allow Deny from all Allow from 127.0.0.1 Allow from ::1 # Allow from .example.com </IfModule> </Location>
Restartujte a povolte službu HTTPD.
systemctl restart httpd systemctl enable httpd
SELinux
Pokud máte na svém systému povolen SELinux, budete muset spustit níže uvedené příkazy; jinak se nebudete moci přihlásit do phpPgAdmin.
yum install -y policycoreutils setsebool -P httpd_can_network_connect_db 1
Firewall
Povolit službu HTTP ve firewallu, abychom měli přístup k phpPgAdmin pomocí prohlížeče z externích počítačů.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Přístup k phpPgAdmin
Nyní otevřete phpPgAdmin z prohlížeče, URL bude:
http://your.ip.add.ress/phppgadminZískáte níže uvedenou stránku.
Klikněte na svou instanci PostgreSQL uvedenou v levém podokně (pod servery). Přihlaste se do své instance PostgreSQL pomocí svého uživatelského jména a hesla.
Nyní byste měli získat stránku databáze.
Závěr
Úspěšně jste nainstalovali phpPgAdmin na CentOS 7 / RHEL 7. Navštivte stránku phpPgAdmin s FAQ, kde se dozvíte více o phpPgAdmin a stránce nápovědy, pokud potřebujete podporu.