MacでApache, MySQL, PHP環境を作ったよ

いわゆるMAMPです。

環境

Mac OS X 10.5.5

Apache

最初から入ってます。「システム環境設定」→「共有」→「Web共有」にチェックを入れるとApacheが起動します。
ドキュメントルートは、

となります。
PHPのライブラリを読み込むようにします。

$ cd /etc/apache2/
$ sudo vim httpd.conf
「LoadModule php5_module        libexec/apache2/libphp5.so」のコメントアウトを外す

Apacheの再起動をします。

$ sudo apachectl restart

PHP

最初から入っています。
php.iniの編集をします。

$ cd /etc
$ sudo cp php.ini.default /php.ini
$ sudo chmod u+w php.ini
$ sudo vim php.ini

編集する内容は「php.iniでよくやる設定まとめ - bojovs技術日記」を参考にします。
また、上記ページに書かれている内容を編集する以外に、MySQLのsocketのパスも編集します。デフォルトで

mysql.default_socket =

となっているところを、

mysql.default_socket = /opt/local/var/run/mysql5/mysqld.sock

に変更します。
ちなみにMySQLのソケットへのパス(今回でいう「/opt/local/var/run/mysql5/mysqld.sock」の部分)は、

$ mysql5 -u root -p
Enter password: 
mysql> status

を実行した結果の「UNIX socket:」という項目で確認できます。
最後にApacheの再起動をします。

$ sudo apachectl restart

MySQL

MacPortsを使ってインストールします。
MacPorts自体のインストール方法は「Mac OS X 10.5にMacPortsをインストールしたよ - bojovs技術日記」に書いています。)
MySQLをインストールします。

$ sudo port install mysql5 +server

自動で起動するように以下のコマンドを走らせます。

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

MySQLの初期化コマンドを実行します。

$ sudo -u mysql mysql_install_db5

パーミッションを変更します。

$ sudo chown -R mysql /opt/local/var/db/mysql5/
$ sudo chgrp -R mysql /opt/local/var/db/mysql5/

my.cnf(MySQLの設定ファイル)の設定をします。

$ sudo cp /opt/local/share/mysql5/mysql/my-small.cnf /opt/local/etc/mysql5/my.cnf
$ sudo vim /opt/local/etc/mysql5/my.cnf

書き込む内容は「my.cnfでよくやる設定メモ - bojovs技術日記」に書いています。
MySQLを起動します。

$ sudo mysqld_safe5

rootのパスワードを設定します。

$ sudo mysqladmin5 -u root password '(パスワード)'

パスワードが反映されているかログインして確かめます。

$ mysql5 -u root -p

こんな感じの表示になれば成功です。

$ mysql5 -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.67 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

ちなみにmy.cnfを弄り直したりしてMySQLを再起動したくなったときは以下のコマンドを実行します。

$ sudo launchctl stop org.macports.mysql5
$ sudo launchctl start org.macports.mysql5

終了です。お疲れさまでした!