Mamp - Mac, Apache, MySQL, PHP

Von Arne

Wenn man Webseiten entwickelt ist es manchmal sehr angenehm eine lokale SQL Datenbank zu haben. Da ich mein Powerbook manchmal mitnehme und auch ohne Internetverbindung arbeiten möchte ist eine lokale Datenbank eine Notwendigkeit. Ein Apache Webserver ist bei OS X bereits mitgeliefert und vorkonfiguriert. Aktivieren kann man den Webserver in den Systemeinstellungen unter Sharing. Das DocumentRoot liegt unter

/Library/WebServer/Documents


PHP wird ebenfalls mit ausgeliefert, muss jedoch in der Apache Konfiguration aktiviert werden. Die Konfigurationsdatei befindet sich in

/etc/httpd/httpd.conf


dort müssen zwei Zeilen entkommentiert werden (das # entfernen) und zwar folgende:

LoadModule php4_module        libexec/httpd/libphp4.so
AddModule mod_php4.c 


Falls nicht bereits geschehen, sollte man dem Apachen noch mitteilen, dass index.php eine gültige Index-Seite ist. (Es wird nur index.php hinzugefügt, der Rest ist schon vorhanden)

DirectoryIndex index.html index.php


danach den Apachen neu starten (z.B. unter Sharing, das Websharing einmal deaktivieren und wieder aktivieren).


Sharing Preferences

Zum Abschluss wird noch MySQL installiert. Am einfachsten lädt man sich das fertige Paket von der MySQl Webseite herunter. Die Installation sollte selbsterklärend sein. Es gibt 3 Objekte, einmal den Datenbankserver selbst, einmal ein Startobjekt, welches ermöglicht, den Server beim Betriebssystemstart zu starten und ein Plugin für die Systemeinstellungen, welche zum Starten/Stoppen benutzt werden kann.


MySQL Preferences

Zur Administration des MySQL Servers empfehle ich das Tool MySQL Administrator ebenfalls direkt von der MySQL Webseite zu beziehen.


MySQL Administrator

Damit ist es einfach z.B. Benutzer einzurichten oder Datenbankbackups zu erstellen.

Bleibt noch ein Problem. Will man PHP 4.x mit MySQL 4.1.x benutzen, so wird die Authentifizierung am Server fehlschlagen, da MySQL ab der Version 4.1 andere Hash-Algorithmen benutzt. Der Server besitzt aber einen Kompatibilitätsmodus. Dazu setzt man das Passwort des Users, der per PHP auf die Datenbank zugreifen soll wie folgt:

mysql> SET PASSWORD FOR 'user'@'host' = OLD_PASSWORD('pass');


Diese Eingabe erfolgt in der MySQL-Shell, erreichbar mit

mysql -u root -p

oder, wenn kein Passwort für den User root gesetzt ist mit
mysql -u root

(Das schnellstens ein Passwort gesetzt werden sollte ist selbstverständlich.)

Nun sollte man ein lauffähiges Mamp-System haben. Fragen und Anregungen bitte direkt unter diesem Artikel als Kommentar.

 


 

Vielleicht auch interessant:


Über den Autor

Wenn Arne keine Artikel für planet-rcs schreibt dann programmiert er Webanwendungen in Python und trainiert mit dem Fahrrad für die Vattenfall-Cyclassics.

Feedback