MySQL-Server auf Debian Lenny inkl. phpmyadmin

Tutorials

1. Einleitung
Als Datenbankserver bietet sich MySQL ( www.mysql.org) an. Die meisten von kleinen bis mittelgrossen Webanwendungen benötigten Funktionalitäten bietet MySQL bei sehr guter Performance. MySQL ist ein vollwertiges Datenbankmanagementsystem (DBMS), das mittlerweile auch Transaktionen und Mechanismen zur Datenintegrität bereitstellt (wer braucht das schon bei einer 08/15 Webanwendung).

2. MySQL-Server installieren
Der Server und die Clientanwendung lassen sich dank der bereits fertigen Debianpakete mühelos mit dem genialen Paketmanagement von Debian installieren.

rootserver:~# apt-get install mysql-server mysql-client

Für den MySQL-Rootuser ein Passwort vergeben.

rootserver:~# /usr/bin/mysqladmin -u root password ’new-password‘

Damit der Shelluser root beim Einloggen ein MySQL nicht jedesmal nach seinem Passwort gefragt wird, kann eine .my.cnf im Homeverzeichnis angelegt werden, die u.a. Umgebungsvariablen und Passwort enthält.

rootserver:~# vi .my.cnf
[mysql]
user = root
password =

[mysqladmin]
user = root
password =

Darauf darf allerdings nur der User root Leserechte haben, deshalb diese Datei noch absichern.

rootserver:~# chmod 0600 .my.cnf

In der globalen Konfigurationsdatei /etc/mysql/my.cnf können Einstellungen bei Bedarf geändert werden, da kann ich keine pauschalen Tipps geben. Standardmässig läuft MySQL über den Socket und ist im Netzwerk nicht verfügbar. Deutsche Fehlermeldungen stellt man folgendermassen ein.

language = /usr/share/mysql/german

Wer Netzwerkunterstützung braucht (nur wenn direkter Zugriff von aussen möglich sein soll – phpmyadmin greift z.B. nicht von aussen zu), kann hier das Kommentarzeichen einfügen.

#skip-networking

Netzwerkunterstützung an eine IP binden
Wer die Netzwerkunterstützung bei MySQL aktiviert hat, kann aus Sicherheitsgründen den Netzwerkzugriff an eine bestimmte interne Netzwerkadresse binden. Dazu muss in dem MySQL-Startskript oder der globalen Konfigurationsdatei /etc/mysql/my.cnf folgender Parameter gesetzt werden:

–bind-address=

Über dieses File lassen sich einige Parameter bestimmen, die allesamt in der Dokumentation gut beschrieben sind. Einige Beispielkonfigurationen findet man unter /usr/share/doc/mysql-server/examples, am besten einfach mal durchschauen und ggf. die eigene Konfiguration anpassen.
Damit Aenderungen wirksam werden, einen Neustart mittels folgendem Kommando nicht vergessen.

rootserver:~# /etc/init.d/mysql restart

3. Phpmyadmin installieren
Phpmyadmin gibt es als Debianpaket. Es ist nicht die allerneueste Version und enthält daher nicht alle Features, die verfügbar wären. Jedoch stehen bei Debian bekanntlich Sicherheit und Stabilität an erster Stelle und das bietet das jeweilige Debianpaket.

rootserver:~# apt-get install phpmyadmin

Das Skript bietet von sich aus 3 verschiedene Möglichkeiten an, sich zu authentifizieren. Am einfachsten zu handhaben und gleichzeitig sehr sicher ist die Methode „http“. Ebenso sollte noch die genaue URL zu phpmyadmin angegeben werden, damit es im Folgenden keine Probleme gibt, v.a. beim Aufruf über https, sofern gewünscht. Folgendes in der config.php ändern.

rootserver:~# vi /etc/phpmyadmin/config.inc.php
$cfgPmaAbsoluteUri = „ssl.deinedomain.tld/phpmyadmin/“
$cfgServers[1][‚auth_type‘] = ‚http‘;
$cfgServers[1][‚user‘] = “;

Damit nicht jeder User die Serverinformationen einsehen kann, sollten noch folgende Einträge auf false gesetzt sein.

$cfgShowMysqlInfo = FALSE
$cfgShowPhpInfo = FALSE
$cfgShowMysqlVars = FALSE

Wie phpmyadmin aufgrufen wird, hängt von zwei Angaben ab. Zum einen davon, was beim installieren angegeben wurde, also ob und wenn ja wo der Eintrag „Include /etc/phpmyadmin/apache.conf“ hinzugefügt wurde (evtl. in der /etc/apache/httpd.conf oder /etc/apache-ssl/httpd.conf) und zum anderen, was in der /etc/phpmyadmin/apache.conf drin steht. Evtl. diese noch den eigenen Wünschen anpassen.



Weitere Artikel



Hi, ich bin Tobias - Gründer und seit 2009 begeisterter IT-Blogger auf tobias-hartmann.net! Mit Begeisterung versuche ich euch bei alltäglichen IT Problemen zu unterstützen, schreibe Anleitungen zu diversen IT-Themen und berichte euch über Smartphones & Tablets aus China.