phpPgAdmin è uno strumento di gestione PostgreSQL ampiamente utilizzato. Puoi usarlo per gestire i database PostgreSQL in un'interfaccia web intuitiva.
In questo articolo, tratteremo i passaggi necessari per installare phpPgAdmin su un'istanza del server Vultr CentOS 7 x64.
Prima di andare avanti, devi:
- Distribuire una nuova istanza del server Vultr CentOS 7 x64.
- Accedi all'istanza del server con un utente sudo .
Passaggio 1: aggiornare il sistema allo stato più recente
Su CentOS 7, si consiglia sempre di aggiornare il sistema all'ultimo stato usando yum:
sudo yum update
sudo reboot
Nota : è necessario riavviare l'istanza solo se sono stati applicati gli aggiornamenti del kernel.
Una volta riavviato il server, accedere nuovamente utilizzando lo stesso utente sudo.
Passaggio 2: installare Apache Web Server
Poiché phpPgAdmin è uno strumento basato sul Web, è necessario un server Web per l'esecuzione. Ai fini di questo tutorial, installeremo Apache. Sei comunque libero di scegliere il tuo Niginx o Lighttpd se preferisci.
sudo yum install httpd
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
È necessario modificare la configurazione del firewall predefinita prima di poter accedere a phpPgAdmin da un browser Web:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-port=5432/tcp
sudo firewall-cmd --reload
Quindi è possibile visitare http: // [YourServerIP] dal browser per confermare la configurazione.
Nota : per tua informazione, SELinux è disabilitato sull'istanza del server Vultr CentOS 7 x64 per impostazione predefinita. Se lo accendi manualmente, devi anche configurare SELinux come di seguito:
sudo setsebool -P httpd_can_network_connect on
sudo setsebool -P httpd_can_network_connect_db on
Passaggio 4: installa PHP 5 e le estensioni necessarie
phpPgAdmin è scritto in PHP, devi installare PHP 5 e alcune estensioni per servire phpPgAdmin.
sudo yum install php php-pgsql
Passaggio 5: installare e configurare PostgreSQL
Sul sito Web ufficiale di phpPgAdmin , trova l'ultima versione stabile di PostgreSQL per CentOS 7 x64 e il suo URL. Al momento della scrittura, l'ultima versione stabile di PostgreSQL è 9.5.
5.1) Utilizzare i seguenti comandi per installare PostgreSQL 9.5 sul server CentOS 7:
sudo yum install http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm
sudo yum groupinstall "PostgreSQL Database Server 9.5 PGDG"
5.2) Avviare il database:
sudo /usr/pgsql-9.5/bin/postgresql95-setup initdb
5.3) Impostazione del metodo di autenticazione dell'utente del database:
sudo vi /var/lib/pgsql/9.5/data/pg_hba.conf
Trova la seguente sezione:
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
Modifica il metodo di autenticazione delle connessioni locali IPv4 a md5:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Salva ed esci:
:wq
5.4) Configurare gli indirizzi di ascolto PostgreSQL:
sudo vi /var/lib/pgsql/9.5/data/postgresql.conf
Trova:
#listen_addresses = 'localhost'
modificalo in:
listen_addresses = '*'
Trova:
#port = 5432
modificalo in:
port = 5432
Salva ed esci:
:wq
5.5) Avviare il servizio PostgreSQL:
sudo systemctl start postgresql-9.5.service
sudo systemctl enable postgresql-9.5.service
5.6) Impostazione delle credenziali utente del database:
Per impostazione predefinita, il programma PostgreSQL creerà un utente di database "postgres". Per motivi di sicurezza, tuttavia, è necessario creare un altro utente del database per l'accesso remoto.
sudo -u postgres psql
Nella shell psql:
CREATE USER pgdbuser CREATEDB CREATEUSER ENCRYPTED PASSWORD 'pgdbpass';
CREATE DATABASE mypgdb OWNER pgdbuser;
GRANT ALL PRIVILEGES ON DATABASE mypgdb TO pgdbuser;
\q
Passaggio 6: installare e utilizzare phpPgAdmin
Installa phpPgAdmin con il seguente comando:
sudo yum install phpPgAdmin
Quindi configurare phpPgAdmin come accessibile dall'esterno:
sudo vi /etc/httpd/conf.d/phpPgAdmin.conf
Sostituire:
Require local
con:
Require all granted
Sostituire:
Deny from all
con:
Allow from all
Salva ed esci:
:wq
Modifica il config.inc.php
file:
sudo vi /etc/phpPgAdmin/config.inc.php
Trova la linea:
$conf['servers'][0]['host'] = '';
Sostituisci la linea con:
$conf['servers'][0]['host'] = 'localhost';
Trova la linea:
$conf['owned_only'] = false;
Sostituisci la linea con:
$conf['owned_only'] = true;
Salva ed esci:
:wq
Ricarica PostgreSQL e servizi httpd:
sudo systemctl start postgresql-9.5.service
sudo systemctl reload httpd.service
È tutto. Ora puoi visitare phpPgAdmin dal tuo browser: http: // [YourServerIP] / phpPgAdmin /. Usa il nome utente "pgdbuser" e la password "pgdbpass" che abbiamo impostato in precedenza per accedere.