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.