phpPgAdmin è uno strumento di amministrazione basato sul Web per la gestione del database PostgreSQL ed è molto simile a phpMyAdmin, uno strumento basato sul Web per la gestione di MySQL (MariaDB).
Se hai esperienza di lavoro su phpMyAdmin, è molto facile per te comprendere le funzionalità di phpPgAdmin.
Questa guida ti aiuterà a installare phpPgAdmin su Ubuntu 18.04 / Ubuntu 16.04 e LinuxMint 19 / Linux Mint 18.
Prerequisiti
Prima di configurare phpPgAdmin, dai un'occhiata a come installare PostgreSQL su Ubuntu 18.04 / Ubuntu 16.04 e LinuxMint 19 / Linux Mint 18.
Verifica che il servizio PostgreSQL sia in esecuzione sul server.
sudo systemctl status postgresql
Risultato:
● 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.
Installa phpPgAdmin
phpPgAdmin è disponibile nel repository di base, quindi puoi installarlo usando il comando apt-get install.
sudo apt-get install -y phppgadmin apache2
Configura PostgreSQL
Per impostazione predefinita, PostgreSQL accetta l'autenticazione solo da localhost . Se vuoi connettere PostgreSQL da macchine esterne, dovresti modificare il pg_hba.conf file.
### PostgreSQL 11 ### sudo nano /etc/postgresql/11/main/pg_hba.conf ### PostgreSQL 10 ### sudo nano /etc/postgresql/10/main/pg_hba.conf
Inserisci il valore secondo i tuoi requisiti in IPv4 e assicurati che accetti la password md5.
# IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 192.168.1.0/24 md5
Configura phpPgAdmin
Modifica /etc/phppgadmin/config.inc.php file.
sudo nano /etc/phppgadmin/config.inc.php
Aggiungi qui le tue istanze 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 non consentirà agli utenti senza password o con determinati nomi utente (pgsql, postgres, root, amministratore) di accedere.
Per ignorare questa sicurezza aggiuntiva, cambiala in false.
$conf['extra_login_security'] = false;
Impostando questo valore, nascondi semplicemente i database degli altri utenti dall'elenco dei database. Tuttavia, possono ottenere i dati (da altri database) utilizzando query SQL.
$conf['owned_only'] = false;
Configura Apache
A causa delle restrizioni, phpPgAdmin è accessibile solo su localhost. Se vuoi accedere all'interfaccia web di phpPgAdmin da macchine esterne, devi modificare il file di configurazione di Apache (phppgadmin.conf).
sudo nano /etc/apache2/conf-enabled/phppgadmin.conf
La configurazione predefinita apparirà come di seguito.
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>
Si prega di commentare il Richiedi locale riga e aggiungi Richiedi tutto concesso appena sotto alla riga commentata.
Sembrerà di seguito.
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
Riavvia i servizi.
sudo systemctl restart postgresql sudo systemctl restart apache2
Accedi a phpPgAdmin
Ora accedi a phpPgAdmin dal tuo browser web, l'URL sarà
http://il-tuo-indirizzo-ip/phppgadminOPPURE:
http://localhost/phppgaminPagina iniziale di phpPgAdmin:
Lavora con phpPgAdmin
Fare clic sul server elencato nel riquadro di sinistra per accedere all'istanza PostgreSQL. Accedi utilizzando l'utente del database.
Ora otterrai l'elenco dei database.
Questo è tutto.