MySQL-Verbindung mit der MAMP-Datenbank

04.12.2006 1 Comment
Trackback-URL

Als ich diesen Artikel bei Shaun Inman gelesen habe fiel mir wieder ein, dass ich auch ein wenig an meinem MAMP herummanipuliert habe, damit es so funktioniert, wie ich es will. Wer nämlich zum Beispiel mal versucht hat, mit einem GUI-Tool auf die im MAMP laufenden MySQL-Datenbank zuzugreifen, wird feststellen, dass jeder Versuch vergeblich ist. 

Da kann man noch so sorgfältig die Portnummern abtippen. Das Problem liegt an anderer Stelle und zwar in der Art und Weise, wie MAMP die MySQL Datenbank startet. Die Skripts dafür liegen im MAMP-Applikationsverzeichnis also unter /Applications/MAMP/bin. Entsprechend der aufzuführenden Aufgaben gibt es eine startMySQL.sh und eine stopMySQL.sh. Mit zwei kleinen Änderungen hat man den Zugriff für GUI-Tools schnell aktiviert.

Das Problem ist nämlich, dass so ein Tool wie CocoaMySQL bei localhost-Verbindungen den UNIX-Socket verwenden will um die Verbindung herzustellen. MAMP legt die Verbindung allerdings absichtlich in /Applications/MAMP/tmp/mysql/mysql.sock. Der Pfad den MySQL standardmäßig verwenden würde wäre: /tmp/mysql.sock

Um die Funktion von MAMP nicht zu beeinflussen fügt man in die beiden Skripte einfach einen symbolischen Link ein, damit man den Socket auch am Standardplatz findet:

startMySql.sh

/Applications/MAMP/Library/bin/mysqld_safe --port=3389 --socket=/Applications/MAMP/tmp/mysql/mysql.sock --lower_case_table_names=0 --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --log-error=/Applications/MAMP/logs/mysql_error_log &
ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock

 

 

stopMySql.sh

/Applications/MAMP/Library/bin/mysqladmin -u root -proot --socket=/Applications/MAMP/tmp/mysql/mysql.sock shutdown
rm /tmp/mysql.sock

 

Wer es noch einfach mag, der kann allerdings auch ganz simpel den MAMP-Socket direkt in CocoaMysql angeben:

Trackbacks

Comments

Add a comment

Give your name to us, stranger!

This field is just for spam-detection!

Is the url written correctly?

Your opinion is still missing!

Sending comment
Sending comment