pgAdmin è uno strumento di gestione gratuito e open source per PostgreSQL e database di relazioni derivate come EDB Advanced Server. Può essere installato su più piattaforme OS come Linux, Unix, Mac OS X e Windows per gestire PostgreSQL 9.2 e versioni successive.
Modalità di distribuzione
pgAdmin può essere eseguito come applicazione Web o desktop.
Distribuzione del server
Nella distribuzione del server (applicazione Web), viene distribuita come applicazione Web dietro un server Web in esecuzione come proxy inverso o utilizzando l'interfaccia WSGI.
Distribuzione desktop
Nella distribuzione desktop (applicazione desktop), viene distribuito per l'esecuzione in modalità desktop utilizzando il runtime desktop per ospitare l'applicazione. Quando il runtime viene avviato dalla barra delle applicazioni, esegue il server pgAdmin e avvia un browser Web per eseguire il rendering dell'interfaccia utente.
In questa guida, installeremo pgAdmin 4 su CentOS 7 / RHEL 7 e Fedora 29 / Fedora 28 come applicazione web (distribuzione del server).
Prerequisiti
Installa PostgreSQL Server
Questo post presuppone che tu abbia già PostgreSQL 9.2 e versioni successive installato sul tuo sistema. Altrimenti, segui il post:Come installare PostgreSQL 11/10 su CentOS 7 / RHEL 7.
Configura il repository EPEL
Avremmo bisogno di abilitare il repository EPEL per scaricare i pacchetti dipendenti per pgAdmin.
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Configura il repository PostgreSQL
pgAdmin 4 è disponibile nel repository PostgreSQL e il tuo sistema dovrebbe avere il repository PostgreSQL a questo punto se hai già completato l'installazione di PostgreSQL. In caso contrario, aggiungi il repository PostgreSQL utilizzando il comando seguente.
### PostgreSQL 11 ### # RHEL 7 # yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-redhat11-11-2.noarch.rpm # CentoS 7 # yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm # Fedora 29 # dnf install https://download.postgresql.org/pub/repos/yum/11/fedora/fedora-29-x86_64/pgdg-fedora11-11-2.noarch.rpm # Fedora 28 # dnf install https://download.postgresql.org/pub/repos/yum/11/fedora/fedora-28-x86_64/pgdg-fedora11-11-2.noarch.rpm ### PostgreSQL 10 ## # RHEL 7 # yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-redhat10-10-2.noarch.rpm # CentoS 7 # yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm # Fedora 29 # dnf install https://download.postgresql.org/pub/repos/yum/10/fedora/fedora-29-x86_64/pgdg-fedora10-10-4.noarch.rpm # Fedora 28 # dnf install https://download.postgresql.org/pub/repos/yum/10/fedora/fedora-28-x86_64/pgdg-fedora10-10-4.noarch.rpm
Installa pgAdmin 4
Dopo aver configurato il repository PostgreSQL sul tuo sistema, esegui il comando seguente per installare pgAdmin 4.
### RHEL / CentOS ### yum -y install pgadmin4 ### Fedora ### dnf -y install pgadmin4
Avvia e abilita il servizio httpd.
systemctl start httpd systemctl enable httpd
Configura pgAdmin 4
Avremmo bisogno di apportare alcune modifiche alla configurazione prima di accedere a pgAdmin 4.
Copia la configurazione di esempio di pgAdmin 4.
cp /etc/httpd/conf.d/pgadmin4.conf.sample /etc/httpd/conf.d/pgadmin4.conf
Crea un registro pgAdmin e directory di dati.
mkdir /var/log/pgadmin4/ mkdir /var/lib/pgadmin4/
Crea/Modifica il file config_local.py.
vi /usr/lib/python2.7/site-packages/pgadmin4-web/config_local.py
Aggiungi le seguenti impostazioni.
LOG_FILE = '/var/log/pgadmin4/pgadmin4.log' SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db' SESSION_DB_PATH = '/var/lib/pgadmin4/sessions' STORAGE_DIR = '/var/lib/pgadmin4/storage'
Modifica i permessi delle directory in modo che Apache possa scrivervi dati.
chown -R apache:apache /var/lib/pgadmin4/* chown -R apache:apache /var/log/pgadmin4/*
Eseguire il comando seguente per creare un account utente per l'interfaccia Web di pgAdmin 4.
python /usr/lib/python2.7/site-packages/pgadmin4-web/setup.py
Risultato:
NOTE: Configuring authentication for SERVER mode. Enter the email address and password to use for the initial pgAdmin user account: Email address: [email protected] Password: xxxxxxxxx Retype password: xxxxxxxxx pgAdmin 4 - Application Initialisation ======================================
Riavvia il servizio web Apache.
systemctl restart httpd
Firewall
Configura il firewall in modo che possiamo accedere a pgAdmin 4 da macchine esterne.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
SELinux
Prendi in considerazione la disabilitazione permanente di SELinux affinché pgAdmin 4 funzioni correttamente.
Accedi a pgAdmin 4
Apri un browser web e vai al seguente URL per accedere all'interfaccia di pgAdmin 4.
http://ip.add.re.ss/pgadmin4Accedi all'interfaccia web di pgAdmin 4 utilizzando l'indirizzo email e la password che hai creato in precedenza.
Dopo l'accesso, dovresti vedere l'interfaccia di pgAdmin 4.
Per gestire un server PostgreSQL, dovrai aggiungere un nuovo server. Fare clic su Aggiungi nuovo server.
Scheda Generale:
Nome:- Assegna un nome al tuo server PostgreSQL
Scheda Connessione:
Nome host/indirizzo:- Nome host o indirizzo IP del server PostgreSQL
Porta:- 5432 (Lascia predefinito) – Modificalo se necessario
Nome utente:- Nome utente con cui ti stai connettendo. Nel mio caso, è postgres.
Password:- Password per l'utente
Fai clic su Salva per salvare le modifiche.
Se la connessione al server PostgreSQL ha esito positivo, dovresti vedere la pagina seguente.
Risoluzione dei problemi
Potresti ricevere un messaggio Fatale:autenticazione dell'identità non riuscita per l'utente errore.
Per risolvere il problema, modifica pg_hba.conf
file.
### PostgreSQL 11 ### vi /var/lib/pgsql/11/data/pg_hba.conf ### PostgreSQL 10 ### vi /var/lib/pgsql/11/data/pg_hba.conf
Aggiorna la riga sottostante mostrata come di seguito.
# TYPE DATABASE USER ADDRESS METHOD host all all all md5
Riavvia il servizio PostgreSQL.
### PostgreSQL 11 ### systemctl restart postgresql-11 ### PostgreSQL 10 ### systemctl restart postgresql-10
Conclusione
Hai installato con successo pgAdmin 4 su CentOS 7 / RHEL 7 e Fedora 29 / Fedora 28 e aggiunto una delle tue istanze PostgreSQL per gestire il database. pgAdmin 4 è simile a phpPgAdmin in termini di gestione dei database PostgreSQL. Puoi visitare la documentazione di pgAdmin 4 per ulteriori informazioni.