phpMyAdmin ist ein PHP-basiertes Open-Source-Tool zur Verwaltung von MySQL- und MariaDB-Servern über eine webbasierte Schnittstelle.
Mit phpMyAdmin können Sie mit MySQL-Datenbanken interagieren, Benutzerkonten und Berechtigungen verwalten, SQL-Anweisungen ausführen, Daten in einer Vielzahl von Datenformaten importieren und exportieren und vieles mehr.
Dieses Tutorial beschreibt, wie man phpMyAdmin mit Nginx auf Ubuntu 18.04 installiert.
Voraussetzungen #
Stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllt haben, bevor Sie mit diesem Lernprogramm fortfahren:
- LEMP (Linux, Nginx, MySQL und PHP 7) auf Ihrem Ubuntu-Server installiert.
- Als Benutzer mit sudo-Berechtigungen angemeldet.
Obwohl es nicht erforderlich ist, wird dringend empfohlen, über HTTPS auf Ihre phpMyAdmin-Instanz zuzugreifen. Wenn Sie SSL auf Ihren Websites nicht aktiviert haben, lesen Sie unseren Artikel darüber, wie Sie Ihr Nginx mit Let’s Encrypt unter Ubuntu 18.04 sichern können.
Installation von phpMyAdmin auf Ubuntu #
Die Installation von phpMyAdmin ist eine ziemlich einfache Aufgabe. Beginnen Sie mit der Aktualisierung der Paketliste:
sudo apt update
Führen Sie als Nächstes den folgenden Befehl aus, um das phpMyAdmin-Paket aus den standardmäßigen Ubuntu-Repositories zu installieren:
sudo apt install phpmyadmin
Stellen Sie sicher, dass Sie Nginx und PHP FPM auf Ihrem System installiert haben, bevor Sie phpMyAdmin installieren.
Das Installationsprogramm fordert Sie auf, den Webserver auszuwählen, der automatisch für die Ausführung von phpMyAdmin konfiguriert werden soll. Es gibt keine Option, Nginx auszuwählen, drücken Sie TAB
um OK
auszuwählen und dann Enter
. Wir konfigurieren Nginx im nächsten Abschnitt.
Als nächstes fragt Sie das Installationsprogramm, ob Sie dbconfig-common
verwenden möchten Tool zum Einrichten der Datenbank. Wählen Sie Yes
und drücken Sie Enter
.
Geben Sie ein Passwort für phpMyAdmin ein, um sich bei der Datenbank zu registrieren, und wählen Sie OK
und drücken Sie Enter
.
Sie werden aufgefordert, das Passwort zu bestätigen, dasselbe Passwort einzugeben und OK
auszuwählen und drücken Sie Enter
.
An diesem Punkt wurde phpMyAdmin auf Ihrem Ubuntu-Server installiert.
Erstellen Sie einen administrativen MySQL-Benutzer #
In Ubuntu-Systemen mit MySQL 5.7 (und höher) ist der Root-Benutzer so eingestellt, dass er auth_socket
verwendet Authentifizierungsmethode standardmäßig.
Der auth_socket
plugin authentifiziert Benutzer, die sich vom localhost über die Unix-Socket-Datei verbinden. Das bedeutet, dass Sie sich nicht als Root authentifizieren können, indem Sie ein Passwort eingeben.
Anstatt die Authentifizierungsmethode für den MySQL-Benutzer root zu ändern, erstellen wir einen neuen administrativen MySQL-Benutzer. Dieser Benutzer hat die gleichen Rechte wie der Root-Benutzer und wird so eingestellt, dass er das mysql_native_password
verwendet Authentifizierungsmethode.
Wir werden diesen Benutzer verwenden, um uns beim phpMyAdmin-Dashboard anzumelden und administrative Aufgaben auf unserem MySQL-Server auszuführen.
Melden Sie sich zunächst als Root-Benutzer beim MySQL-Server an:
sudo mysql
Führen Sie in der MySQL-Shell die folgenden Befehle aus, die einen neuen Administratorbenutzer erstellen und entsprechende Berechtigungen erteilen:
CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'change-with-your-secure-password';
GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;
In diesem Beispiel haben wir den administrativen Benutzer padmin
genannt . Sie können einen beliebigen Namen verwenden, stellen Sie nur sicher, dass Sie ein sicheres Passwort festlegen.
Konfigurieren von Nginx und phpMyAdmin #
Es gibt mehrere Möglichkeiten, Nginx für die Bereitstellung von phpMyAdmin-Dateien zu konfigurieren. Wenn der Serverblock Ihrer Domain bereits eingerichtet ist, um die PHP-Anfragen zu bedienen, können Sie einfach einen symbolischen Link von den phpMyAdmin-Installationsdateien zum Stammverzeichnis Ihrer Domaindokumente erstellen.
In diesem Leitfaden erstellen wir ein Snippet, das wir in jede unserer Nginx-Serverblockdateien einfügen können.
Öffnen Sie Ihren Texteditor und erstellen Sie die folgende Datei:
sudo nano /etc/nginx/snippets/phpmyadmin.conf
Fügen Sie den folgenden Inhalt ein:
/etc/nginx/snippets/phpmyadmin.conflocation /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
Stellen Sie sicher, dass Sie den richtigen Socket-Pfad oder Adresse/Port für fastcgi_pass
verwenden Richtlinie. Speichern Sie die Datei und schließen Sie Ihren Editor.
Sie können jetzt die folgende Zeile zum Serverblock jeder Domain hinzufügen, mit der Sie auf phpMyAdmin zugreifen möchten:domain.com/phpmyadmin
include snippets/phpmyadmin.conf;
Hier ist ein Beispiel:
/etc/nginx/conf.d/domain.com.confserver {
# . . . other code
include snippets/phpmyadmin.conf;
# . . . other code
}
Zugriff auf phpMyAdmin #
Um auf die phpMyAdmin-Oberfläche zuzugreifen, öffnen Sie Ihren bevorzugten Browser und geben Sie den Domänennamen oder die öffentliche IP-Adresse Ihres Servers ein, gefolgt von /phpmyadmin
:
http(s)://your_domain_or_ip_address/phpmyadmin
Geben Sie die Anmeldedaten des administrativen Benutzers ein und klicken Sie auf Go
.
Sobald Sie sich angemeldet haben, sehen Sie das phpMyAdmin-Dashboard, das in etwa so aussieht: