phpPgAdmin je webový administrační nástroj pro správu PostgreSQL databáze a je velmi podobný phpMyAdmin, webový nástroj pro správu MySQL (MariaDB).
Pokud máte pracovní zkušenosti s phpMyAdminem, pak je pro vás velmi snadné porozumět funkcím phpPgAdmin.
Tato příručka vám pomůže nainstalovat phpPgAdmin na Ubuntu 18.04 / Ubuntu 16.04 &LinuxMint 19 / Linux Mint 18.
Předpoklady
Před nastavením phpPgAdmin se podívejte, jak nainstalovat PostgreSQL na Ubuntu 18.04 / Ubuntu 16.04 &LinuxMint 19 / Linux Mint 18.
Zkontrolujte, zda na serveru běží služba PostgreSQL.
sudo systemctl status postgresql
Výstup:
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Sat 2019-02-23 11:43:07 IST; 23h ago
Main PID: 6536 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 2323)
CGroup: /system.slice/postgresql.service
Feb 23 11:43:07 server systemd[1]: Starting PostgreSQL RDBMS...
Feb 23 11:43:07 server systemd[1]: Started PostgreSQL RDBMS. Nainstalujte phpPgAdmin
phpPgAdmin je k dispozici v základním úložišti, takže jej můžete nainstalovat pomocí příkazu apt-get install.
sudo apt-get install -y phppgadmin apache2
Konfigurace PostgreSQL
Ve výchozím nastavení PostgreSQL přijímá ověření pouze z localhost . Pokud chcete připojit PostgreSQL z externích počítačů, budete muset upravit soubor pg_hba.conf soubor.
### PostgreSQL 11 ### sudo nano /etc/postgresql/11/main/pg_hba.conf ### PostgreSQL 10 ### sudo nano /etc/postgresql/10/main/pg_hba.conf
Zadejte hodnotu podle vašich požadavků v IPv4 a ujistěte se, že přijímá heslo md5.
# IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 192.168.1.0/24 md5
Nakonfigurujte phpPgAdmin
Upravte /etc/phppgadmin/config.inc.php soubor.
sudo nano /etc/phppgadmin/config.inc.php
Zde přidejte své instance PostgreSQL.
// Display name for the server on the login screen
$conf['servers'][0]['desc'] = 'PostgreSQL 11';
// Hostname or IP address for server. Use '' for UNIX domain socket.
// use 'localhost' for TCP/IP connection on this computer
$conf['servers'][0]['host'] = 'localhost';
// Database port on server (5432 is the PostgreSQL default)
$conf['servers'][0]['port'] = 5432; phpPgAdmin nepovolí přihlášení uživatelům bez hesla nebo určitých uživatelských jmen (pgsql, postgres, root, administrátor).
Chcete-li toto dodatečné zabezpečení přepsat, změňte jej na hodnotu false.
$conf['extra_login_security'] = false;
Nastavením této hodnoty na hodnotu true jednoduše skryjete databáze ostatních uživatelů ze seznamu databází. Mohou však získat data (z jiných databází) pomocí SQL dotazů.
$conf['owned_only'] = false;
Nakonfigurujte Apache
Kvůli omezení je phpPgAdmin přístupný pouze na localhost. Pokud chcete přistupovat k webovému rozhraní phpPgAdmin z externích počítačů, musíte upravit konfigurační soubor apache (phppgadmin.conf).
sudo nano /etc/apache2/conf-enabled/phppgadmin.conf
Výchozí konfigurace bude vypadat níže.
Alias /phppgadmin /usr/share/phppgadmin
<Directory /usr/share/phppgadmin>
<IfModule mod_dir.c>
DirectoryIndex index.php
</IfModule>
AllowOverride None
# Only allow connections from localhost:
Require local
<IfModule mod_php.c>
php_flag magic_quotes_gpc Off
php_flag track_vars On
#php_value include_path .
</IfModule>
<IfModule !mod_php.c>
<IfModule mod_actions.c>
<IfModule mod_cgi.c>
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php
</IfModule>
<IfModule mod_cgid.c>
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php
</IfModule>
</IfModule>
</IfModule>
</Directory> Zakomentujte prosím Vyžadovat místní řádek a přidejte Vyžadovat vše uděleno těsně níže na řádek s komentářem.
Bude to vypadat níže.
Alias /phppgadmin /usr/share/phppgadmin
<Directory /usr/share/phppgadmin>
<IfModule mod_dir.c>
DirectoryIndex index.php
</IfModule>
AllowOverride None
# Only allow connections from localhost:
# Require local
Require all granted
<IfModule mod_php.c>
php_flag magic_quotes_gpc Off
php_flag track_vars On
#php_value include_path .
</IfModule>
<IfModule !mod_php.c>
<IfModule mod_actions.c>
<IfModule mod_cgi.c>
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php
</IfModule>
<IfModule mod_cgid.c>
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php
</IfModule>
</IfModule>
</IfModule>
</Directory Restartujte služby.
sudo systemctl restart postgresql sudo systemctl restart apache2
Přístup k phpPgAdmin
Nyní otevřete phpPgAdmin z vašeho webového prohlížeče, URL bude
http://vaše-ip-adresa/phppgadminNEBO:
http://localhost/phppgaminÚvodní stránka phpPgAdmin:
Práce s phpPgAdmin
Kliknutím na server uvedený v levém podokně se přihlaste do instance PostgreSQL. Přihlaste se pomocí uživatele databáze.
Nyní získáte seznam databází.
To je vše.