phpMyAdmin ist ein webbasiertes Open-Source-Administrationstool zur Verwaltung der MySQL- und MariaDB-Server. Es ist eines der beliebtesten Datenbankverwaltungstools, das von Hosting-Unternehmen und Systemadministratoren für Datenbankaktivitäten wie das Erstellen, Löschen, Abfragen von Tabellen, Spalten, Beziehungen, Indizes, Benutzern, Berechtigungen usw. verwendet wird.
phpMyAdmin ist eine portable Webanwendung, die in PHP geschrieben ist. Es wird unter GNU GPL v2 veröffentlicht.
In diesem Beitrag werden wir sehen, wie man phpMyAdmin mit Apache auf CentOS 8 / RHEL 8 installiert.
Voraussetzungen
Installieren Sie den MySQL-/MariaDB-Server
Vor der Installation von phpMyAdmin muss eine Datenbankinstanz (MySQL oder MariaDB) auf Ihrem System laufen, um eine Verbindung herzustellen. Es kann eine eigenständige Datenbankinstanz sein oder als Teil des LAMP-Stacks installiert werden.
Eigenständige Datenbank
LESEN: So installieren Sie MariaDB unter CentOS 8 / RHEL 8
LESEN: So installieren Sie MySQL 8.0 unter CentOS 8 / RHEL 8
Installieren Sie PHP, das MySQL-Unterstützungspaket für PHP und andere PHP-Pakete auf Ihrem System, damit phpMyAdmin sich mit der Datenbank verbinden kann.
dnf install -y wget php php-pdo php-pecl-zip php-json php-common php-fpm php-mbstring php-cli php-mysqlnd php-xml tar
LAMPENstapel
LESEN: So installieren Sie den LAMP-Stack unter CentOS 8 / RHEL 8
Installieren Sie die folgenden PHP-Pakete für phpMyAdmin, um sich mit der Datenbank zu verbinden.
dnf install -y php-json php-mbstring
Installieren Sie phpMyAdmin
Das phpMyAdmin-Paket ist noch nicht im Betriebssystem-Repository für CentOS 8 / RHEL 8 verfügbar. Daher müssen wir es von der offiziellen Website herunterladen.
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.tar.gz
Installieren Sie phpMyAdmin mit dem folgenden Befehl.
tar -zxvf phpMyAdmin-5.1.1-all-languages.tar.gz
Verschieben Sie die phpMyAdmin-Einrichtung an den gewünschten Ort.
mv phpMyAdmin-5.1.1-all-languages /usr/share/phpMyAdmin
phpMyAdmin konfigurieren
Kopieren Sie die Beispielkonfigurationsdatei.
cp -pr /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
Bearbeiten Sie die Konfigurationsdatei und fügen Sie ein Blowfish-Secret hinzu.
vi /usr/share/phpMyAdmin/config.inc.php
Blowfish-Geheimnis generieren und in die untere Zeile einfügen.
$cfg['blowfish_secret'] = 'bo95yavJ;V,1PzSlxyFwtyMJ}WmG98-6'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Importieren Sie create_tables.sql, um neue Tabellen für phpMyAdmin zu erstellen.
mysql < /usr/share/phpMyAdmin/sql/create_tables.sql -u root -p
Erstellen Sie einen Alias im Apache-Webserver, damit phpMyAdmin mit http://ihre-ip-adresse/phpmyadmin.
aufgerufen werden kannvi /etc/httpd/conf.d/phpMyAdmin.conf
Kopieren Sie den folgenden Inhalt und fügen Sie ihn in die obige Datei ein.
Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/> AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory> <Directory /usr/share/phpMyAdmin/setup/> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory>
Erstellen Sie ein tmp-Verzeichnis für phpMyAdmin und ändern Sie die Berechtigung.
mkdir /usr/share/phpMyAdmin/tmp chmod 777 /usr/share/phpMyAdmin/tmp
Legen Sie den Besitz von phpMyAdmin wie unten gezeigt fest.
chown -R apache:apache /usr/share/phpMyAdmin
Starten Sie den Dienst neu.
systemctl restart httpd
SELinux
Erstellen Sie SELinux-Richtlinien, damit phpMyAdmin korrekt funktioniert.
yum install -y policycoreutils-python-utils semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/phpMyAdmin/' semanage fcontext -a -t httpd_sys_rw_content_t "/usr/share/phpMyAdmin/tmp(/.*)?" restorecon -Rv '/usr/share/phpMyAdmin/'
Firewall
Erstellen Sie eine Firewall-Regel, um HTTP-Anfragen von externen Netzwerken zuzulassen.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Wichtige Hinweise
Lesen Sie die wichtigen Hinweise, bevor Sie mit Root- oder normalen Datenbankbenutzern auf phpMyAdmin zugreifen.
MySQL 8.x
MySQL 8.0, das aus dem Repository der MySQL Dev Community installiert wurde, verwendet einen caching_sha2_password-Mechanismus zur Authentifizierung, der verhindert, dass Legacy-Anwendungen derzeit auf Datenbanken, einschließlich phpMyAdmin, zugreifen. Einfach ausgedrückt, Sie werden sich nicht bei phpMyAdmin anmelden, es sei denn, wir deaktivieren diesen neuen Passwortmechanismus.
Sie können den neuen Passwortmechanismus global deaktivieren, indem Sie default-authentication-plugin=mysql_native_password in /etc/my.cnf platzieren (Benutzer, die nach dieser Änderung erstellt werden, haben den mysql_native_password-Authentifizierungsmechanismus), oder Sie können zur alten nativen Authentifizierung (mysql_native_password) zurückkehren einzelne Benutzer (z. B. root) durch Ausführen von ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '
Zugreifen auf phpMyAdmin
Greifen Sie nun über den Browser auf phpMyAdmin zu, die URL lautet:
http://localhost/phpMyAdminODER
http://ihre-ip-adresse-ess/phpMyAdminMelden Sie sich mit dem Root (DB-Administrator) oder einem beliebigen Datenbankbenutzer an.

Sie gelangen auf die Datenbankseite, auf der Sie alle Datenbankaktivitäten durchführen können.

Schlussfolgerung
Ich hoffe, Sie haben gelernt, wie Sie phpMyAdmin mit Apache CentOS 8 / RHEL 8 installieren, um MariaDB- und MySQL-Datenbanken zu verwalten. Darüber hinaus können Sie sich ansehen, wie Sie Ihre phpMyAdmin-Installation sichern können.