phpPgAdmin ist ein webbasiertes Verwaltungstool zur Verwaltung der PostgreSQL-Datenbank und sehr ähnlich zu phpMyAdmin, einem webbasierten Tool zur Verwaltung von MySQL (MariaDB).
Wenn Sie Berufserfahrung mit phpMyAdmin haben, ist es für Sie sehr einfach, die Funktionalitäten von phpPgAdmin zu verstehen.
Diese Anleitung hilft Ihnen bei der Installation von phpPgAdmin auf Ubuntu 18.04 / Ubuntu 16.04 &LinuxMint 19 / Linux Mint 18.
Voraussetzungen
Sehen Sie sich vor dem Einrichten von phpPgAdmin an, wie PostgreSQL unter Ubuntu 18.04 / Ubuntu 16.04 und LinuxMint 19 / Linux Mint 18 installiert wird.
Überprüfen Sie, ob der PostgreSQL-Dienst auf dem Server ausgeführt wird.
sudo systemctl status postgresql
Ausgabe:
● 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.
Installieren Sie phpPgAdmin
phpPgAdmin ist im Basis-Repository verfügbar, Sie können es also mit dem Befehl apt-get install installieren.
sudo apt-get install -y phppgadmin apache2
PostgreSQL konfigurieren
Standardmäßig akzeptiert PostgreSQL nur die Authentifizierung von localhost . Wenn Sie PostgreSQL von externen Computern aus verbinden möchten, müssen Sie die pg_hba.conf bearbeiten Datei.
### PostgreSQL 11 ### sudo nano /etc/postgresql/11/main/pg_hba.conf ### PostgreSQL 10 ### sudo nano /etc/postgresql/10/main/pg_hba.conf
Geben Sie den Wert gemäß Ihren Anforderungen in IPv4 ein und stellen Sie sicher, dass das md5-Passwort akzeptiert wird.
# IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 192.168.1.0/24 md5
phpPgAdmin konfigurieren
Bearbeiten Sie /etc/phppgadmin/config.inc.php Datei.
sudo nano /etc/phppgadmin/config.inc.php
Fügen Sie hier Ihre PostgreSQL-Instanzen hinzu.
// 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 erlaubt Benutzern ohne Passwort oder mit bestimmten Benutzernamen (pgsql, postgres, root, administrator) nicht, sich anzumelden.
Um diese zusätzliche Sicherheit außer Kraft zu setzen, ändern Sie sie in "false".
$conf['extra_login_security'] = false;
Wenn Sie dies auf "true" setzen, werden die Datenbanken anderer Benutzer einfach aus der Datenbankliste ausgeblendet. Sie können jedoch die Daten (aus anderen Datenbanken) mithilfe von SQL-Abfragen abrufen.
$conf['owned_only'] = false;
Apache konfigurieren
Aufgrund von Einschränkungen ist phpPgAdmin nur auf localhost zugänglich. Wenn Sie von externen Rechnern aus auf die phpPgAdmin-Weboberfläche zugreifen möchten, müssen Sie die Apache-Konfigurationsdatei (phppgadmin.conf) bearbeiten.
sudo nano /etc/apache2/conf-enabled/phppgadmin.conf
Die Standardkonfiguration sieht wie folgt aus.
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>
Bitte kommentieren Sie Require local aus Zeile und fügen Sie Alle gewährten Anforderungen erfordern hinzu direkt unterhalb der kommentierten Zeile.
Es sieht wie folgt aus.
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
Starten Sie die Dienste neu.
sudo systemctl restart postgresql sudo systemctl restart apache2
Zugriff auf phpPgAdmin
Greifen Sie nun über Ihren Webbrowser auf phpPgAdmin zu, die URL lautet
http://Ihre-IP-Adresse/phppgadminODER:
http://localhost/phppgaminStartseite von phpPgAdmin:
Mit phpPgAdmin arbeiten
Klicken Sie auf den im linken Bereich aufgelisteten Server, um sich bei der PostgreSQL-Instanz anzumelden. Melden Sie sich mit dem Datenbankbenutzer an.
Sie erhalten nun die Liste der Datenbanken.
Das ist alles.