$ sudo port install phpmyadmin
でいけると思ったけど、「apr-1.4.2.tar.bz2 が見つかりません」的なエラーが出てインストールが止まる。
http://sourceforge.jp/projects/sfnet_buluoos/downloads/0.1/src/apr-1.4.2.tar.bz2/ からapr-1.4.2.tar.bz2をダウンロードし、所定のディレクトリに置いてsudo port install phpmyadminするとphpmyadminがインストールできた。
デフォルトでは、/opt/local/www/phpmyadmin にインストールされるので、snow leopardデフォルトのWeb共有(apache2)を使うなら、/Library/WebServer/Documents 配下にシンボリックリンクを作成すればいい。
で、http://(ホスト)/phpmyadmin にアクセスすると、今度は「mcrypt 拡張をロードできません。PHP の設定を確認してください。」のメッセージが。mcryptをインストールすれば良さそうなので、
$ sudo port install php5-mcrypt
インストールした。
これでmcryptがインストールされたので、再度phpmyadminにアクセスしてみる。すると「mcrypt 拡張をロードできません。PHP の設定を確認してください」との表示が。
…
まぁいい。どうやらphp.iniを編集する必要がある様子。今まで/etc/php.iniを作っていなかったので、php.iniの作成から。
$ sudo cp /etc/php.ini.default /etc/php.ini
次に、php.iniの編集。「Dynamic Extensions」の項目に追加。
extension_dir="/opt/local/lib/php/extensions/no-debug-non-zts-20090626/" extension=gd.so extension=mcrypt.so
portsでインストールしたモジュールとは違うけど、どうやらこれで動くっぽい。で、apacheを再起動すると、phpmyadminから「mcrypt 拡張をロードできません。PHP の設定を確認してください」の表示が消えた。やりぃ。
さっそくログインしてみる。…。できん。ブラウザに以下の表示が。
#2002 MySQL サーバにログインできません
どうやらまだphp.iniに編集が必要らしい。なので、rootユーザでphp.iniを編集。mysql.default_socket の値を /tmp/mysql.sock に変更。
#mysql.default_socket = /var/mysql/mysql.sock mysql.default_socket = /tmp/mysql.sock
編集したら、apacheを再起動する。よし、ログインでけた。ちなみに、僕はこちらでパッケージ(.dmg)をインストールしていたのでこうなった。portsからMySQLをインストールしていれば、sockファイルのパスが/opt/local/var/run/mysql5/mysqld.sockとかになっているかもしれない。
次はログイン後の画面。「設定ファイルが秘密のパスフレーズ (blowfish_secret) を必要とするようになりました」とかいうメッセージが表示されている。myphpadminの/opt/local/www/phpmyadmin/config.inc.php を編集すればよい。
$cfg['blowfish_secret'] = '(ここに適当な文字列を入れる)'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
これでOK。
あとは「リンクテーブルを処理するための追加機能が無効になっています。理由についてはこちらをご覧ください」とかいうメッセージが表示されてる。管理用テーブルが無いからか?ということで /opt/local/www/phpmyadmin/scripts/create_tables.sql を実行。
$ mysql -u root -p < /opt/local/www/phpmyadmin/scripts/create_tables.sql
これで管理用DBであるphpmyadminが作られた。
次に、再びconfig.inc.phpの編集。これで、config.inc.phpの「Advanced phpMyAdmin features」周辺にある項目から、「リンクテーブルを処理するための追加機能が無効になっています。理由についてはこちらをご覧ください」のメッセージのリンク先にある変数のコメントアウトをひたすら外す。
$ sudo vi /opt/local/www/phpmyadmin/config.inc.php … /* Advanced phpMyAdmin features */ $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark'; $cfg['Servers'][$i]['relation'] = 'pma_relation'; $cfg['Servers'][$i]['table_info'] = 'pma_table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma_column_info'; $cfg['Servers'][$i]['history'] = 'pma_history'; $cfg['Servers'][$i]['tracking'] = 'pma_tracking'; $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords'; …
これで「リンクテーブルを処理するための追加機能が無効になっています。理由についてはこちらをご覧ください」が表示されなくなった。
別に解決しなくて良いのなら、メッセージだけを表示させないようにconfig.inc.phpを編集すればいい。→参考
// リンクテーブルメッセージの抑制 $cfg['PmaNoRelation_DisableWarning'] = true; // mcryptメッセージの抑制 $cfg['McryptDisableWarning'] = true;