Mac OSXにMySQL環境を作る
普段はネットワーク上のMySQLを利用しているのですが、ローカルにも入っていた方が便利なのでインストールしました。ちょっと注意点があったのでメモ。
MySQLのインストール
http://dev.mysql.com/downloads/mysql/5.0.htmlからMySQL 5.0 Community Serverの「Mac OS X (package format)」をダウンロード。さくっとインストール。.pkgファイルは二つありますが、MySQLStartupItem.pkgをダブルクリックするとMac OSXの起動時にMySQLが自動起動するようになるのでこちらも入れておきます。手動での起動と停止は下記。
起動
停止
デフォルトではrootのパスワードがないので設定しておきます。
phpMyAdminのインストール
# wget http://jaist.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.10.1-all-languages.tar.gz # tar zxvf phpMyAdmin-2.10.1-all-languages.tar.gz # cp -Rp phpMyAdmin-2.10.1-all-languages /Library/WebServer/Documents/phpMyAdmin
ダウンロードして解凍して移動。
# cd /Library/WebServer/Documents/phpMyAdmin
# cp config.sample.inc.php config.inc.php
# vi config.inc.php
$cfg['blowfish_secret'] = 'hoge'; ←適当な文字列を設定
http://localhost/phpMyAdmin/にアクセスすると「設定ファイルが秘密のパスフレーズ (blowfish_secret) を必要とするようになりました」と出るので対処。
エラー #2002 - サーバが応答しません (あるいはローカルの MySQL サーバのソケットが正しく設定されていません)
これでいけると思ったら上記のエラー。
my.cnfを作成。
# cp /etc/php.ini.default /etc/php.ini
# vi /etc/php.ini
mysql.default_socket = /tmp/mysql.sock←編集
php.iniを作成してmysql.default_socketを設定
Apache再起動して終了
my.cnf
my.cnfはこんな感じにしておきました。適当です。微妙かも。
[client] port = 3306 socket = /tmp/mysql.sock default-character-set = utf8 [mysqld] port = 3306 socket = /tmp/mysql.sock skip-locking key_buffer = 16M max_allowed_packet = 1M table_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M log = /var/log/mysql/mysql.log log-error = /var/log/mysql/mysql-err.log skip-character-set-client-handshake default-character-set = utf8 character-set-server = utf8 collation-server = utf8_general_ci skip-character-set-client-handshake init-connect = SET NAMES utf8 log-bin=mysql-bin server-id = 1 [mysqldump] quick max_allowed_packet = 16M default-character-set = utf8 [mysql] no-auto-rehash default-character-set = utf8 [isamchk] key_buffer = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [myisamchk] key_buffer = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [mysqlhotcopy] interactive-timeout
参考
- http://mount-q.com/yamaqblog/?page_id=326
- http://mtlab.ecn.fpu.ac.jp/WSM_2005/050502122340.html
- http://docs.info.apple.com/article.html?artnum=301457