phpPgAdmin ist ein webbasiertes Verwaltungstool zur Verwaltung der PostgreSQL-Datenbank, und sein Erscheinungsbild ist dem von phpMyAdmin sehr ähnlich. Wenn Sie Arbeitserfahrung mit phpMyAdmin haben, brauchen Sie nicht viel Zeit, um sich mit phpPgAdmin vertraut zu machen.
Diese Anleitung hilft Ihnen bei der Einrichtung von phpPgAdmin 5.6 auf CentOS 7 / RHEL 7.
Voraussetzungen
Vorausgesetzt, Sie haben PostgreSQL bereits auf Ihrem System installiert. Wenn nicht, sehen Sie sich an, wie PostgreSQL 11 / 10 auf CentOS 7 / RHEL 7 installiert wird.
Installieren Sie die abhängigen Pakete für phpPgAdmin.
yum install -y php php-cli php-common php-pdo php-pgsql httpd apr apr-util httpd-tools libzip mailcap
Installieren Sie phpPgAdmin
Der im EPEL-Repository verfügbare phpPgAdmin unterstützt PostgreSQL 10 und höher nicht.
Fehler:
Version von PostgreSQL wird nicht unterstützt. Bitte aktualisieren Sie auf Version oder höher.
Also richten wir phpPgAdmin ein, indem wir das Paket von der offiziellen Website herunterladen.
Laden Sie die neueste Version von phpPgAdmin herunter. Das Herunterladen der tarierten Datei wird bevorzugt.
wget https://github.com/phppgadmin/phppgadmin/archive/REL_5-6-0.tar.gz
Extrahieren Sie das heruntergeladene Archiv mit dem Befehl tar.
tar -zxvf REL_5-6-0.tar.gz
Verschieben Sie die extrahierten Dateien nach /usr/share/phppgadmin
Verzeichnis.
mv phppgadmin-REL_5-6-0/ /usr/share/phppgadmin
phpPgAdmin konfigurieren
Kopieren Sie die Konfigurationsdatei, um mit der phpPgAdmin-Konfiguration zu beginnen.
mv /usr/share/phppgadmin/conf/config.inc.php-dist /usr/share/phppgadmin/conf/config.inc.php
Bearbeiten Sie /etc/phpPgAdmin/config.inc.php
Datei.
vi /usr/share/phppgadmin/conf/config.inc.php
Legen Sie den Namen für Ihre PostgreSQL-Instanz fest. Diese Einstellung listet Ihren Instanznamen in der phpPgAdmin-Weboberfläche auf.
$conf['servers'][0]['desc'] = 'PostgreSQL 11';
Fügen Sie im folgenden Serverparameter localhost oder die IP-Adresse Ihrer PostgreSQL-Instanz hinzu.
$conf['servers'][0]['host'] = 'localhost';
Wenn die zusätzliche Anmeldesicherheit wahr ist, werden Anmeldungen über phpPgAdmin ohne Passwort oder bestimmte Benutzernamen (pgsql, postgres, root, administrator ) wird abgelehnt. Um die Postgres-Anmeldung zu aktivieren, ändern Sie sie in „false“.
$conf['extra_login_security'] = false;
Um einfach die Datenbanken anderer (im Besitz von anderen) in der Liste auszublenden, setzen Sie die folgende Bedingung auf wahr.
$conf['owned_only'] = true;
PostgreSQL konfigurieren
Wir müssen die MD5-Authentifizierung auf PostgreSQL aktivieren, damit wir PostgreSQL-Instanzen von phpPgAdmin aus verwalten und Verbindungen von externen Rechnern herstellen können.
Die Aktivierung der MD5-Authentifizierung erhöht die Sicherheit und erlaubt nur die Anmeldung mit verschlüsseltem Passwort. Ändern Sie die Konfigurationsdatei, um die MD5-Authentifizierung zu akzeptieren.
### PostgreSQL 11 ### vi /var/lib/pgsql/11/data/pg_hba.conf ### PostgreSQL 10 ### vi /var/lib/pgsql/10/data/pg_hba.conf
Bitte geben Sie den Wert gemäß Ihren Anforderungen in IPv4-Verbindungen ein. Stellen Sie sicher, dass es MD5-Passwörter akzeptiert.
# TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all all all md5Verwenden Sie 192.168.1.0/24 statt alle unter ADRESSE um die MD5-Authentifizierung für das spezifische Subnetz von IP-Adressen zu aktivieren.
Starten Sie den PostgreSQL-Dienst neu.
### PostgreSQL 11 ### systemctl restart postgresql-11 ### PostgreSQL 10 ### systemctl restart postgresql-10
Apache konfigurieren
Erstellen Sie eine Konfigurationsdatei unter /etc/httpd/conf.d
Verzeichnis, damit Apache die phpPgAdmin-Schnittstelle bedienen kann.
vi /etc/httpd/conf.d/phppgadmin.conf
Kopieren Sie den folgenden Inhalt und fügen Sie ihn in die obige Datei ein.
Alias /phppgadmin /usr/share/phppgadmin <Location /phppgadmin> <IfModule mod_authz_core.c> # Apache 2.4 Require all granted #Require host example.com </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order deny,allow Deny from all Allow from 127.0.0.1 Allow from ::1 # Allow from .example.com </IfModule> </Location>
Starten Sie den HTTPD-Dienst neu und aktivieren Sie ihn.
systemctl restart httpd systemctl enable httpd
SELinux
Wenn Sie SELinux auf Ihrem System aktiviert haben, müssen Sie die folgenden Befehle ausführen; Andernfalls können Sie sich nicht bei phpPgAdmin anmelden.
yum install -y policycoreutils setsebool -P httpd_can_network_connect_db 1
Firewall
Lassen Sie den HTTP-Dienst in der Firewall zu, damit wir über einen Browser von externen Rechnern aus auf phpPgAdmin zugreifen können.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Zugriff auf phpPgAdmin
Greifen Sie nun über den Browser auf phpPgAdmin zu, die URL lautet:
http://ihre.ip.add.ress/phppgadminSie erhalten die folgende Seite.
Klicken Sie im linken Bereich (unter den Servern) auf Ihre PostgreSQL-Instanz. Melden Sie sich mit Ihrem Benutzernamen und Passwort bei Ihrer PostgreSQL-Instanz an.
Sie sollten jetzt die Datenbankseite erhalten.
Schlussfolgerung
Sie haben phpPgAdmin erfolgreich auf CentOS 7 / RHEL 7 installiert. Besuchen Sie die FAQ-Seite von phpPgAdmin, um mehr über phpPgAdmin und die Hilfeseite zu erfahren, wenn Sie Unterstützung benötigen.