MySQL-Datenbankadministration mit phpMyAdmin

Daten im Griff

von Wolfgang Kruck


Der Umgang mit Datenbanken ist mit den bei Datenbanken üblicherweise mitgelieferten Tools ziemlich mühsam, umständlich und wenig komfortabel. Eine komfortable Bedienung der Datenbank MySQL ist aber auch mit phpMyAdmin möglich. Eine Einführung in phpMyAdmin, angefangen von der Installation über die Konfiguration bis hin zur Anwendung von phpMyAdmin ist in diesem Kurzbericht nachzulesen.

phpMyAdmin ist eine Sammlung von PHP3-Skripten, mit welchen es möglich ist die Datenbank MySQL über das WWW zu verwalten. Ich beziehe mich hier ausschließlich auf die phpMyAdmin-Version 2.0.4.

Die Voraussetzungen für phpMyAdmin

Diese Voraussetzungen sind leicht zu erfüllen. Bei der von mir verwendeten SuSE 6.2 Linux-Distribution entspricht dies dem Installieren der Pakete apache und mod_php beide Serie n. Als Web-Browser empfiehlt sich netscape, Serie xap. MySQL ist in der Serie pay zu finden. Zur Grundkonfiguration von MySQL siehe [5]. Vor der Installation von phpMyAdmin empfiehlt es sich zu prüfen, ob die Voraussetzungen für seinen Einsatz erfüllt sind. Um herauszufinden ob der Web-Server läuft, kann man mit ps ax | grep -i httpd die Prozessliste anschauen. Bei erfolgreicher Installation müssen dann Einträge der Form wie in Listing 1 vorhanden sein. Analog dazu kann mit einem der beiden Befehle in Listing 2 geprüft werden ob der MySQL-Daemon läuft.

Listing 1: Läuft der httpd-Daemon?

Nikita:~ # ps ax | grep -i httpd
  246  ?  S    0:02 /usr/sbin/httpd -f /etc/httpd/httpd.conf -D PERL -D PHP
  484  ?  S    0:00 grep -i httpd
  301  ?  S    0:00 /usr/sbin/httpd -f /etc/httpd/httpd.conf -D PERL -D PHP
  302  ?  S    0:00 /usr/sbin/httpd -f /etc/httpd/httpd.conf -D PERL -D PHP
  303  ?  S    0:00 /usr/sbin/httpd -f /etc/httpd/httpd.conf -D PERL -D PHP
  304  ?  S    0:00 /usr/sbin/httpd -f /etc/httpd/httpd.conf -D PERL -D PHP
  305  ?  S    0:00 /usr/sbin/httpd -f /etc/httpd/httpd.conf -D PERL -D PHP

Listing 2: Läuft der mysql-Daemon?

Nikita:~ # ps ax | grep -i mysql
  221  ?  SW   0:00 (safe_mysqld)
  231  ?  S N  0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/mysql --skip-
  251  ?  S N  0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/mysql --skip-
  252  ?  S N  0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/mysql --skip-
 1887  ?  S    0:00 grep -i mysql

Nikita:~ # mysqladmin status
Uptime: 3  Threads: 1  Questions: 1  Slow queries: 0  Opens: 6  
Flush tables: 1  Open tables: 2       

Um zu prüfen, ob der Web-Server PHP3 unterstützt und somit PHP3 korrekt installiert ist, ist eine etwas andere Vorgehensweise notwendig. In dem Verzeichnis, in welchem der Web-Server die HTML-Dateien erwartet, bei einer SuSE Linux-Distribution üblicherweise /usr/local/httpd/htdocs, wird eine PHP-Test-Datei test.php3 angelegt (siehe Listing 3) Bei einer SuSE Linux-Distribution ist diese Datei normalerweise schon vorhanden. Wird diese Datei anschließend in einem Browser geladen, z.B. durch Eingabe der URL http://localhost/test.php3, dann sollte in der Ausgabe eine ausführliche Auflistung aller PHP-Mudule und diverser Einstellungen escheinen. Probieren Sie es einfach selber aus.

Listing 3: Die Datei test.php3

<?
phpinfo()
?>

Installation von phpMyAdmin

Nach den vorangegangenen Tests kann nun eigentlich nichts mehr schiefgehen. Die eigentliche Installation von phpMyAdmin beginnt man am besten mit einem Download der aktuellen Version bei [1]. Als erstes wird die heruntergeladene Datei ins Verzeichnis der HTML-Dokumente des Apache Web-Servers, bei einer SuSE Linux Distribution ist dies üblicherweise /usr/local/httpd/htdocs, kopiert und anschließend mit tar ausgepackt:

cp /download-dir/phpMyAdmin_x.x.x.tar.gz /usr/local/httpd/htdocs/phpMyAdmin_x.x.x.tar.gz
cd /usr/local/httpd/htdocs
tar xzvf phpMyAdmin_x.x.x.tar.gz

Durch das Auspacken der phpMyAdmin_x.x.x.tar.gz-Datei wird im Verzeichnis htdocs ein neues Verzeichnis phpMyAdmin angelegt, in welchem sich jetzt die für phpMyAdmin notwendigen Dateien befinden. Die Installation ist damit abgeschlossen, bevor phpMyAdmin aber verwendet werden kann sind noch ein paar Änderungen an den Konfigurationsdateien notwendig.

Konfiguration von phpMyAdmin

Die gesamte Konfiguration von phpMyAdmin ist im Installationsverzeichniss von phpMyAdmin in der Datei config.inc.php3 zu finden. Grundsätzlich gibt es zwei verschiedene Konfigurationsvarianten:

Listing 5: Basic Authentication - config.inc.php3
// MySQL hostname
$cfgServers[1]['host']     = 'nikita.wk.de';   

// MySQL port - leave blank for default port
$cfgServers[1]['port']     = ''; 

// Use advanced authentication?               
$cfgServers[1]['adv_auth'] = false;             

// MySQL standard user (only needed with advanced auth)
$cfgServers[1]['stduser']  = '';                

// MySQL standard password (only needed with advanced auth)
$cfgServers[1]['stdpass']  = '';                

// MySQL user (only needed with basic auth)
$cfgServers[1]['user']     = 'root';            

// MySQL password (only needed with basic auth)
$cfgServers[1]['password'] = 'StrengGeheim';    

// If set to a db-name, only this db is accessible
$cfgServers[1]['only_db']  = '';	        

// Verbose name for this host - leave blank to show the hostname
$cfgServers[1]['verbose']  = '';                

Listing 6: Advanced Authentication - config.inc.php3

// MySQL hostname
$cfgServers[1]['host']     = 'nikita.wk.de';    

// MySQL port - leave blank for default port
$cfgServers[1]['port']     = '';	        

// Use advanced authentication?
$cfgServers[1]['adv_auth'] = true;              

// MySQL standard user (only needed with advanced auth)
$cfgServers[1]['stduser']  = 'root';            

// MySQL standard password (only needed with advanced auth)
$cfgServers[1]['stdpass']  = 'StrenGeheim';     

// MySQL user (only needed with basic auth)
$cfgServers[1]['user']     = '';                

// MySQL password (only needed with basic auth)
$cfgServers[1]['password'] = '';                

// If set to a db-name, only this db is accessible
$cfgServers[1]['only_db']  = '';	        

// Verbose name for this host - leave blank to show the hostname
$cfgServers[1]['verbose']  = '';                

phpMyAdmin anwenden

Nach Abschluß der Konfiguration kann in einem Browser die URL http://localhost/phpMyAdmin/index.php3 geöffnet werden. Wenn alles richtig konfiguriert ist, muß jetzt die phpMyAdmin-Startseite wie in Abbildung 1 zu sehen sein.


Abb. 1: phpMyAdmin Startseite

Um eine neue Datenbank einzurichten, wird einfach der Name der neuen Datenbank, z.B. "MyDB", in das Feld unter Create new database eingetragen. Ein Klick auf den Button Create erzeugt die neue Datenbank, siehe Abb. 1 und Abb. 2.


Abb. 2: Erstellen einer neuen Datenbank mit phpMyAdmin

Um Daten in der neuen Datenbank Adressen speichern zu können, wird noch mindestens eine Tabelle benötigt. Dazu wird als Beispiel eine Tabelle Adressen mit den Spalten Vorname, Name, Strasse, PLZ, Ort und Geburtstag angelegt. Dazu wird im linken Frame zuerst die neue Datenbank MyDB ausgewählt. Im rechten Frame werden nun die zwei Felder unter Create new table on database MyDB ausgefüllt. Im Feld Name wird der Name der neuen Tabelle, hier Adressen, eingetragen, im Feld Fields die Zahl der Felder die die Tabelle erhalten soll, hier "6" (siehe Abb. 2). Nach einem Klick auf den Button Go sind noch die Eigenschaften der neu zu erstellenden Tabelle festzulegen (siehe Abb. 3). Ein Klick auf Save schießt die Einrichtung der Tabelle ab. So einfach ist das!


Abb. 3: Die Eigenschaften der Tabelle Adressen

Durch die Auswahl der Datenbank MyDB erhält man eine Liste der Tabellen in der Datenbank (Abbildung 4). In diese Tabellen können nun Daten mit Insert hinzugefügt werden. Suchen innerhalb einer Tabelle ist mit Select möglich. Browse ermöglicht schließlich, durch den Inhalt einer Tabelle zu surfen.


Abb. 4: Die Datenbank MyDB und darin enthaltene Tabellen

Damit wären wir am Ende unserer kurzen Vorstellung von phpMyAdmin angelangt. Viel Spaß beim Erkunden der restlichen Funktionlität!

Infos

[1] phpMyAdmin: http://www.phpwizard.net/phpMyAdmin/
[2] PHP3: http://www.php3.net
[3] MySQL: http://www.mysql.org
[4] Apache: http://www.apache.org
[5] MySQL - Eine Einführung: Wolfgang Kruck, Linux-Magazin 2000/01, S. 130ff
[6] Die Homepage des Autors: http://home.t-online.de/home/wolfgang.kruck

Der Autor

Dipl. Ing. (FH) Wolfgang Kruck ist Software-Entwickler. Wenn er nicht vor seinen Computern sitzt und Programme schreibt oder Konfigurationen testet, dann kann man ihn beim Mountainbikefahren in den Alpen oder in Südfrankreich treffen.

Copyright © 2000 Linux-Magazin Verlag