Mit MySQL steht jetzt auch für den Amiga ein ausgereiftes relationales Datenbanksystem zur Verfügung. Es handelt sich um eine Portierung, die einen sehr guten Entwicklungsstand aufweist und daher auch sehr oft, im praktischen Einsatz zu finden ist.
von Michael Christoph
Bei der Portierung handelt es sich um die Version 3.23.38. Für Linux ist zwar bereits die Version 4.0.x erhältlich, allerdings wird diese noch als Entwicklungsversion bezeichnet, wogegen die 3.x als fehlerfrei« anzusehen ist. Die 4.0 enthält dagegen neuere Features, wie Transaktionen, die noch nicht zur Verfügung stehen. Das stellt in der Regel aber kein Problem dar, da sich die meisten Beispiele im Internet auch noch auf die 3er Version beziehen.
MySQL Installieren
MySQL ist fertig kompiliert für den Amiga im Internet erhältlich. Zuerst sollte auf der Festplatte eine Schublade mysql erzeugt werden. Dorthinein wird das Archiv per
lzx x mysqld_3.23.37.lzx
entpackt. Abschließend wird noch ein Assign MYSQL: auf dieses Verzeichnis benötigt. Es ist vorteilhaft, diesen Assign auch in der s:user-startup einzutragen, damit er bei jedem Rechner-Neustart sofort zur Verfügung steht. mySQL beruht auf dem Client-Server-Prinzip. Es gibt einen Server, der die Datenbanken schreibt und liest und beliebig viele Clients, die Anfragen an den Server senden. Der Server kann auch auf einem anderen Rechner (z.B. im Internet) laufen, während die Anfragen vom lokalen Web-Browser vorgenommen werden. Wir beschränken uns hier lediglich auf den lokalen Einsatz. Ob und wie Ihr Provider MySQL unterstützt, müssen Sie dort erfragen.
Apache Installieren
Um eigene Skripte in Ruhe lokal testen zu können, wird ein lokaler Web-Server benötigt. Auch zum Abfragen/Pflegen der Datenbanken über den Browser muss ein Web-Server installiert sein. Am weitesten verbreitet ist Apache, von dem auch eine Portierung für den Amiga vorliegt (aktuell 1.3.20). Das Archiv ist aus dem Internet zu besorgen. Entpacken Sie es mit
untgz apache_1.3.20.tar.gz
in eine neue Schublade (z.B. apache). Alternativ können Sie auch gzip und tar verwenden beide Packertools finden Sie im Aminet. Ein Assing APACHE: auf diese Schublade sollte wieder in der User-Startup Datei eingetragen werden. Unter APACHE:conf/httpd.conf können die lokalen Anpassungen vorgenommen werden. Details dazu finden Sie u.a. auf der Amiga-Magazin-Webseite im Internet.
Miami konfigurieren
Sowohl MySQL als auch Apache stammen aus dem Linux/Unix-Bereich. Diese Betriebssysteme arbeiten benutzerorientiert. Aus diesem Grund sind auf dem Amiga auch Benutzer und Gruppen für die einzelnen ienste anzulegen.
Da diese Möglichkeiten im AmigaOS nicht realisiert sind, übernimmt der TCP/IP-Stack (z.B. »Miami«) diese Aufgabe. Am Beispiel vom verbreiteten Miami werden die Eintragungen erläutert. Diese Einstellungen können Sie auch in der Demoversion vornehmen.
Wechseln Sie in die Rubrik »Datenbank« (Database), und rufen Sie dort die Seite »Gruppen« (Group) ab. Tätigen Sie folgende Eintragung:
Gruppenname: www, Gruppen-ID: 45
Hinweis: Die Gruppen-ID kann abweichen und ist von der Konfiguration Ihres Systems abhängig. Das gilt später auch für die Benutzer-Nummer (User-ID).
Auf der Seite "Benutzer" tragen Sie folgendes ein:
Username: www,
User-ID: 1001,
Gruppen-ID: 45,
Realname: Apache WWW server,
Verzeichnis: APACHE:,
Shell: cli
|
Username: mysql,
User-ID: 1003,
Gruppen-ID: 45,
Realname: mySQL Datenbank,
Verzeichnis: MYSQL:,
Shell: cli
Passwörter sind im lokalen Testbetrieb nicht erforderlich. Wenn Sie Ihren Amiga mit dem Internet verbinden oder im Intranet nutzen, sollten Sie den Usern www und mysql Passwörter geben. Ansonsten laufen Sie Gefahr, dass man in Ihren Rechner einbricht. Resultat kann Daten-Verlust bzw. Manipulation sein.
Ready to go
Nachdem nun alle notwendigen Komponenten installiert wurden, muss noch die Funktionsfähigkeit überprüft werden. Dazu muss Miami bereits laufen, damit die verwendeten User bekannt sind.
Starten Sie als erstes den Apache Server in der Shell:
run apache:bin/httpd
Aufrufoptionen sind nicht erforderlich, wenn alles in APACHE:conf/httpd.conf korrekt konfiguriert wurde.
|
Ob der Apache-Server nach dem Starten korrekt funktioniert, ist einfach mit dem Web-Browser festzustellen. Geben Sie als URL http://localhost/ ein. Danach sollte die Begrüßungsseite von Apache erscheinen (s. »Apache läuft«). Die Index-Datei für den Dokumenten-Root ist unter APACHE:htdocs zu finden. Wenn Sie den Pfad für diese Datei geändert haben, müssen Sie im entsprechenden Verzeichnis suchen. Der Ort für die gehosteten Webseiten läßt sich in der Sektion Document Root in der httpd.conf festlegen. Alle dort befindlichen Dateien (auch eigene), können nun per URL-Adresse abgefragt werden.
MySQL Server starten
Der MySQL-Server ist im Verzeichnis MYSQL:bin zu finden und trägt den Namen »mysqld«. Beim Start der Datenbank sind die Aufrufparameter zwingend erforderlich, so dass sich ein Startscript anbietet. Anzugeben ist, unter welchem Benutzer der Server laufen soll und wo die Datenbanken abgelegt werden. Weitere Einstellungen können in mysql:my.cnf (Default-Konfiguration) eingetragen werden.
run mysql:bin/mysqld -defaults-file=/mysql/my.cnf -uroot -basedir=/mysql/ -datadir=/mysql/data/ -language=/mysql/language/german/ -tmpdir=/mysql/tmp/
|
Alternativ können Sie den mitgelieferten Start-Script im Amiga-MySQL-Archiv verwenden Sie müssen ihn aber zuvor auf Ihre Rechnerkonfiguration (MySQL-User usw.) anpassen. Entsprechende Informationen finden Sie in der Anleitung zu Amiga-MySQL. Nachdem mysqld gestartet wurde, wird in der Konsole folgender Text angezeigt (je nach eingestellter Sprache):
mysql:bin/mysqld: Warten auf Verbindungen
Über den Befehl mysql wird der MySQL-Monitor gestartet. Dieser erlaubt die Eingabe und das Testen aller SQL-Kommandos einzeln und auch als Skript. Als Aufrufparameter sind zusätzlich mitzugeben:
mysql -u <user> -h <host>
Diese Angaben sind notwendig, wenn Ihre Systemeinstellungen von den Standardeinstellungen abweichen sollten. So kann z.B. in MySQL festgelegt werden, dass nur der Benutzer mysql Datenbanken erzeugen und verändern darf, während der User www (der Webserver) nur lesenden Zugriff auf die Daten hat. Konnte erfolgreich eine Verbindung zum mySQL-Server hergestellt werden, wird »Welcome to the MySQL monitor. ...« ausgegeben. Das Programm wartet nun auf die Eingabe von SQL-Kommandos. Mit STATUS wird der aktuelle Zustand des MySQL-Server angezeigt.
Nachdem der direkte Zugriff funktioniert, muss noch festgestellt werden, ob auch der Browser eine Verbindung zum MySQL-Server herstellen kann. Das kleine Beispiel in Listing 1 erledigt das für uns. Die genaue Beschreibung der PHP-Befehle folgt im dritten Teil.
Diese Datei können Sie unter dem Namen mysql-test.php im Directory für die Webseiten speichern. Wurde DocumentRoot in der Apache-Konfiguration nicht verändert, muss das im Verzeichnis APACHE:htdocs erfolgen. Geben Sie im Browser http://localhost/mysql-test.php ein. Zeigt der Browser den Quellcode von Listing 1, ist Apache nicht korrekt für die Ausführung von PHP konfiguriert. Eventuell benutzen Sie eine zu alte Version und haben keinen Support von PHP. Ansonsten wird eine Erfolgsmeldung im Browser ausgegeben. Beachten Sie auch unbedingt die Hinweise im Kasten »Schutzmechanismen von mySQL«.
Gerade wenn es spannend wird, sind wir leider schon am Ende. Freuen Sie sich schon auf den nächsten Teil, der genauer auf SQL eingeht. Im dritten Teil wird das Gelernte in der Praxis in Verbindung mit PHP auszuprobiert. Wenn Sie Probleme mit der Konfiguration und dem Start von MySQL haben, können Sie gern der Redaktion schreiben. Wir veröffentlichen die Antworten in der nächsten Ausgabe. Über Anregungen und Tipps freuen wir uns natürlich auch!
|
lb
Kommentare, Fragen, Korrekturen und Kritik bitte an Webmaster
AMIGA schicken.
Zuletzt aktualisiert am 23. Oktober 2001, Michael Christoph.