PhpMyadmin unter Red Hat Linux 6 installieren

Aus Laub-Home Wiki

Hier eine Anleitung wie man unter Red Hat Enterprise Linux 6 phpMyAdmin installieren kann. Voraussetzung hierfür ist ein lauffähiger Apache Httpd Webserver mit PHP Support und ein MySQL Server

Abhängikeiten installieren

Zuerst müssen ein paar Abhängigkeiten installiert werden, dafür wird das RHEL Server Optional Repository benötigt, welches sich im Red Hat Network (https://rhn.redhat.com) beim System unter Software --> Software-Kanäle hinzufügen lässt. Danach kann mit folgendem Befehl die benötigte Software nachinstalliert werden:

yum install php-common php php-mbstring

Nun fehtl noch das php-mcrypt Paket welches leider aus dem Red Hat Repsoitory geflogen ist. Dieses kann durch das Installieren des EPEL Repository behoben werden. Dafür muss man zuerst unter folgender URL das epel-release RPM Paket herunterladen und installieren:

cd /usr/src/
wget http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
rpm -Uvh epel-release-6-5.noarch.rpm

nun kann das php-mcrypt Paket nachinstalliert werden:

yum install php-mcrypt

Installation phpMyAdmin

So, nach dem nun alle Abhängigkeiten erdfüllt sind, kann das phpMyadmin Paket heruntergeladen und entpackt werden:

cd /usr/src
wget http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.4.9/phpMyAdmin-3.4.9-all-languages.tar.gz?r=http%3A%2F%2Fwww.phpmyadmin.net%2Fhome_page%2Fdownloads.php&ts=1326980755&use_mirror=switch
tar -xzvf phpMyAdmin-3.4.9-all-languages.tar.gz

Nun kann der entpackte Ordner einfach in einen vhost Folder verschoben werden, z.B.:

mv /usr/src/phpMyAdmin-3.4.9-all-languages /srv/httpd/vhosts/www.mydomain.de/htdocs/phpmyadmin

Somit sollte das phpMyAdmin unter der folgenden URL verfügbar sein und ein erster Login funktionieren:

  • http://www.mydomain.de/phpmyadmin

Konfiguration

Wie man beim ersten Login sieht schreibt phpMyAdmin unten folgenden Warning aus

Der phpMyAdmin-Konfigurationsspeicher ist nicht vollständig konfiguriert, einige erweiterte Funktionen wurden deaktiviert. Klicken Sie hier, um herauszufinden warum.

Um dies zu beheben muss wie folgt vorgegangen werden:

cd /srv/httpd/vhosts/www.mydomain.de/htdocs/phpmyadmin/examples/
mysql -u root -p <create_tables.sql

Nun im phpMyAdmin einen neuen Benutzer Namens pma anlegen und diesem nur, auf die frisch angelegte phpmyadmin Tabelle, alle Rechte außer dem GRANT Recht geben.

CREATE USER 'pma'@'%' IDENTIFIED BY '***';
GRANT USAGE ON * . * TO 'pma'@'localhost' IDENTIFIED BY 'YOURPMAPASSWORD' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
GRANT ALL PRIVILEGES ON `phpmyadmin` . * TO 'pma'@'localhost';

Nun gehen wir wieder in den Installordner des phpMyAdmin und konfigurieren es. Dafür aktivieren wir als erstes die Sample-Konfigurations-Datei.

cd /srv/httpd/vhosts/www.mydomain.de/htdocs/phpmyadmin/
mv config.sample.inc.php config.inc.php

Diese wird dann editiert. Hier müssen zum Einen folgende Zeilen einkommentiert und das vergebene pma Benutzerpasswort eingetragen werden.
config.inc.php

/* User used to manipulate with storage */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '5MPtbLw5FvQwRuqL';

/* Storage database and tables */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
$cfg['Servers'][$i]['tracking'] = 'pma_tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma_userconfig';

Nun sollte noch folgender Fehler erscheinen:

Ab sofort muss ein geheimes Passwort zur Verschlüsselung in der Konfigurationsdatei gesetzt werden (blowfish_secret).

Dies kann durch folgende Zeile der Konfigurationsdatei behoben werden (einfach mysecretpass durch ein Passwort ersetzten):
config.inc.php

$cfg['blowfish_secret'] = 'mysecretpass';

Nun sollten alle Fehler behoben sein und das phpMyadmin ist einsatzbereit!