Phpmyadmin

Aus wiki.archlinux.de
Die druckbare Version wird nicht mehr unterstützt und kann Darstellungsfehler aufweisen. Bitte aktualisiere deine Browser-Lesezeichen und verwende stattdessen die Standard-Druckfunktion des Browsers.

phpMyAdmin ist ein webbasiertes Werkzeug zur Administration von MySQL-Datenbanken. Eine funktionierende Installation von Apache, sowie ein MySQL-Server wie z.B. MariaDB werden daher vorausgesetzt.

Installation

phpMyAdmin ist als phpmyadmin in any verfügbar, und kann von dort mittels Pacman installiert werden.

# phpMyAdmin an sich
pacman -S phpmyadmin

# Ebenfalls benötigt
pacman -S php-mcrypt

Konfiguration

Nach der Installation sollte man zuerst sicherstellen, dass keine vorhandene Konfiguration exisitert, damit es nicht zu Konflikten kommt. Dann kopiert man sich am einfachsten die Beispiel-Konfigurationsdatei an die passende Stelle.

cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf

In der Datei /etc/httpd/conf/httpd.conf muss folgendes ergänzt werden.

# phpMyAdmin configuration
Include conf/extra/httpd-phpmyadmin.conf

Berechtigungen setzen

Die Datei /etc/httpd/conf/httpd.conf muss entsprechend angepasst werden

Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
AllowOverride All

In der Datei /usr/share/webapps/phpMyAdmin/.htaccess muss deny from all durch allow from all ersetzt werden.

Alternativ kann man den Zugang auf localhost und das lokale Netzwerk beschränken. Dazu muss die IP-Adresse an den entsprechenden Stellen angepasst werden

deny from all
allow from localhost
allow from 127.0.0.1
allow from ::1
allow from 192.168.1.0/24

phpMyAdmin-Konfiguration in Apache Prüfen

Die Datei /etc/httpd/conf/extra/httpd-phpmyadmin.conf sollte Folgendes enthalten:

Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
<Directory "/usr/share/webapps/phpMyAdmin">
   AllowOverride All
   Options FollowSymlinks
   Require all granted
   php_admin_value open_basedir "/srv/: /tmp/:/usr/share/webapps/:/etc/webapps:/usr/share/pear/"
</Directory>

Es werden die PHP-Erweiterungen mysqli und mcrypt benötigt, wenn man die phpMyAdmin-interne Authentifizierung benutzen möchte. hierzu müssen die beiden entsprechenden Module ind er /etc/php/php.ini einkommentiert werden.

extension=mysqli.so
extension=mcrypt.so

Danach sollte man Apache neu starten.

Auf die phpMyAdmin-Installation zugreifen

Damit ist die Installation abgeschlossen. Vor der Verwendung sollte man aber Apache einmal final neu starten. Danach kann man über http://localhost/phpmyadmin/ auf phpMyAdmin zugreifen.

Dieser pfad lässt sich in der /etc/httpd/conf/extra/httpd-phpmyadmin.conf anpassen.

Alias /andererPfad "/usr/share/webapps/phpMyAdmin"

Hierzu auch [1] lesen.

blowfish_secret-Passphrase hinzufügen

Falls am unteren Rand der Seite folgende Fehlermeldung erscheint während man sich das erste mal unter /phpmyadmin anmeldet muss man ein Blowfish-Paswort in die Konfigurationsdatei einfügen.

ERROR: The configuration file now needs a secret passphrase (blowfish_secret)

Hierzu bearbeitet man /etc/webapps/phpmyadmin/config.inc.php entsprechend

$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Hier kann man ein gutes blowfish_secret erhalten.

$cfg['blowfish_secret'] = '..............'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Nach Neuladen der phphMyAdmin Seite sollte der Fehler verschwunden sein.

local MySQL server's socket is not correctly configured

Sollte beim Zugriff der Fehler #2002 - The server is not responding (or the local MySQL server's socket is not correctly configured) erscheinen, so muss man den Servernamen in der /etc/webapps/phpmyadmin/config.inc.php auf den Hostnamen ändern.

$cfg['Servers'][$i]['host'] = 'meinhostname';

Will man das Setupscript per http://localhost/phpmyadmin/setup benutzen musst man ein Verzeichnis config unter /usr/share/webapps/phpmyadmin erstellen udn entsprechend berechtigen.

cd /usr/share/webapps/phpMyAdmin
mkdir config
chgrp http config
chmod g+w config