Phpmyadmin: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
K stil, synt, wikif
 
(14 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Artikelstil}}
[http://www.phpmyadmin.net/ 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.
Als Voraussetzung müssen [[MySQL]], [[Apache und PHP]] installiert sein.


pacman -S apache php php-apache libxml2 mysql
{{installation
 
|paket=phpmyadmin
danach editierst du die Datei <code>/etc/php/php.ini</code> und kommentierst folgende Zeilen ein, die sich ziemlich am Ende der Datei befinden (das ; am Anfang der Zeile entfernen):
|name=phpMyAdmin
extension=mysql.so
|repo=any
extension=mysqli.so
|zusatz=php-mcrypt
 
|zusatzinfo=Ebenfalls benötigt}}
== Installation ==
Installiere die [[phpmyadmin]] und [[php-mcrypt]] Pakete:
 
pacman -S phpmyadmin php-mcrypt


== Konfiguration ==
== 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.


Vergewissere dich, dass keine ältere Kopie existiert.
  cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf
 
  # rm -r /srv/http/phpMyAdmin
 
Kopiere die Beispielkonfigurationsdatei in das httpd Konfigurationsverzeichnis.
 
# cp /etc/webapps/phpmyadmin/apache.example.conf /etc/httpd/conf/extra/httpd-phpmyadmin.conf


Füge folgende Zeilen <code>/etc/httpd/conf/httpd.conf</code> hinzu.
In der Datei {{ic|/etc/httpd/conf/httpd.conf}} muss folgendes ergänzt werden.


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


=== Setze Berechtigungen ===
=== Berechtigungen setzen ===
Die Datei {{ic|/etc/httpd/conf/httpd.conf}} muss entsprechend angepasst werden


Um Zugriff von jedem Hostrechner zu ermöglichen; editiere <code>/etc/webapps/phpmyadmin/.htaccess</code> und ersetze <code>deny from all</code> zu
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


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


Alternativ kannst du den Zugang auf localhost und dein lokales Netzwerk beschränken. Ersetze ''192.168.1.0/24'' mit dem IP-Block deines Netzwerkes.
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
  deny from all
Zeile 42: Zeile 39:
  allow from 192.168.1.0/24
  allow from 192.168.1.0/24


'''Merke''': Das ::1 wird für IPv6 benötigt. Ansonsten
=== phpMyAdmin-Konfiguration in Apache Prüfen ===
bekämest du eventuell eine Fehlermeldung ähnlich "Error
Die Datei {{ic|/etc/httpd/conf/extra/httpd-phpmyadmin.conf}} sollte Folgendes enthalten:
403 - Acces forbidden!" beim Versuch der phpMyAdmin 
Anmeldung.


=== Prüfe Apache phpMyAdmin Konfiguration ===
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>


Deine <code>/etc/httpd/conf/extra/httpd-phpmyadmin.conf</code> sollte Folgendes enthalten:
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 {{ic|/etc/php/php.ini}} einkommentiert werden.


        Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"
extension=mysqli.so
        <Directory "/usr/share/webapps/phpMyAdmin">
extension=mcrypt.so
                AllowOverride All
 
                Options FollowSymlinks
Danach sollte man Apache neu starten.
                Order allow,deny
                Allow from all
                php_admin_value open_basedir "/srv/: /tmp/:/usr/share/webapps/:/etc/webapps:/usr/share/pear/"
        </Directory>


Du brauchst die mysqli und mcrypt; wenn du interne phpMyAdmin Autentifizierung möchtest; Module. Daher kommentier folgendes in <code>/etc/php/php.ini</code> aus:
== 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 <nowiki>http://localhost/phpmyadmin/</nowiki> auf phpMyAdmin zugreifen.


extension=mysqli.so
Dieser pfad lässt sich in der {{ic|/etc/httpd/conf/extra/httpd-phpmyadmin.conf}} anpassen.
extension=mcrypt.so


Starte httpd neu.
Alias /andererPfad "/usr/share/webapps/phpMyAdmin"


=== Füge blowfish_secret Passphrase hinzu ===
Hierzu auch [https://bbs.archlinux.org/viewtopic.php?pid=632500] {{sprache|en}} lesen.


Falls du folgende Fehlermeldung am Boden der Seite seihst, während du dich das erste mal in /phpmyadmin (Ein zuvor erstellter MySQL Benutzer wird verlangt) :
=== 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)
  ERROR: The configuration file now needs a secret passphrase (blowfish_secret)


Du musst eine Blowfish Passwort in die phpMyAdmin Konfigurationsdatei hinzufügen. Füge ein zufälliges Blowfish "Passwort" in <code>/etc/webapps/phpmyadmin/config.inc.php</code> in der Zeile
Hierzu bearbeitet man {{ic|/etc/webapps/phpmyadmin/config.inc.php}} entsprechend


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


$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
[http://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator Hier] kann man ein gutes {{ic|blowfish_secret}} erhalten.
hinzu.


[http://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator Hier] kannst du ein gutes blowfish_secret erhalten und es zwischen die ''Apstrophen'' einfügen. ''Es sollte nun folgendermaßen aussehen''
$cfg['blowfish_secret'] = '..............'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */


$cfg['blowfish_secret'] = 'qtdRoGmbc9{8IZr323xYcSN]0s)r$9b_JUnb{~Xz'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Nach Neuladen der phphMyAdmin Seite sollte der Fehler verschwunden sein.


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 {{ic|/etc/webapps/phpmyadmin/config.inc.php}} auf den Hostnamen ändern.


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


So wenn du alles erfolgreich absolviert hast, wechselst du wieder in den Browser und gibst dort
Will man das Setupscript per <nowiki>http://localhost/phpmyadmin/setup</nowiki> benutzen musst man ein Verzeichnis {{ic|config}} unter {{ic|/usr/share/webapps/phpmyadmin}} erstellen udn entsprechend berechtigen.
http://localhost/phpMyAdmin/  
ein.
Wenn alles geklappt hat, kommt das Login-Form, dort gibst du bei Username root ein und dein Passwort.


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


[[Kategorie:Internet]]
[[Kategorie:Internet]]
[[Category:Apache HTTP Server]]
[[Kategorie:HTTP-Server]]
 
[[cs:PhpMyAdmin]]
[[en:phpMyAdmin]]
[[es:PhpMyAdmin]]
[[fr:phpmyadmin]]
[[ja:PhpMyAdmin]]
[[ru:PhpMyAdmin]]

Aktuelle Version vom 18. Januar 2022, 13:25 Uhr

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