MacでMySQL
生徒さんから質問があったので、確認のためにMacでのMySQL環境を構築してみた。
- MySQLのダウンロードサイトからMac OS X用のものをダウンロードする。MacならやはりDMG Archiveが便利でしょう。
- ダウンロードしたdmgを展開し、中にある mysql-5.X.XX-osx10.6-x86_64.pkg (ファイル名は環境などで若干違う)をダブルクリックし、後は指示に従ってインストールする。
- MySQLStartupItem.pkg をダブルクリックして、同様に、指示に従ってインストールする。
- MySQL.prefPane をシステム環境設定のウインドウにドラッグする。システム環境設定に「その他」の欄が新たに表示され、MySQLのアイコンが追加される。このアイコンをクリックすると、MySQLの起動制御パネルが表示されるので、そこから起動ができる。
これで、インストールは完了する。特に難しいことはない。あとは、WindowsやLinuxと同様に設定ファイルを書き換えたり、rootユーザのパスワードを設定したり、匿名ユーザを消去したりすればよい。ただ、設定ファイルを書き換える場合、 /etc/my.cnf がデフォルトでは存在しない。その場合は、 /usr/local/mysql/support-files/my-medium.cnf をコピーしてきて書き換える。
$ sudo cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
余談だが、当然sudoはrootで実行する場合にはいらない。こういった環境構築はroot権限が必要なことが多いから、いちいちsudoするよりは、rootで実行した方がいい。rootのなりかたはMacでrootになる - Archit!!を参照。
さらに、そのままではmysqlコマンドが認識しないので、aliasを.bashrcに設定しておいた方がいい。
alias mysql=/usr/local/mysql/bin/mysql
alias mysqladmin=/usr/local/mysql/bin/mysqladmin
あるいは、 .bash_profile にパスを設定しておくのもよい。
PATH = /usr/local/mysql/bin:$PATH
export PATH
あとは、JavaアプリやPHPアプリからの接続の問題となる。
Javaアプリからの接続
これは簡単だ。JDBCドライバが勝手にしてくれるので、WindowやLinuxとかわらない。というより、そもそも、Java自体が基本はOS非依存なわけだから、当たり前といえば当たり前。onnector/Jのダウンロードサイトから該当ファイルをダウンロードし、 mysql-connector-java-5.X.XX-bin.jar をクラスパスの通っているところに配置すればよい。
PHPアプリからの接続
こちらは少し手間がいる。
- MySQLのソケットファイルが通常と違う位置にあるので、それを設定してあげる必要がある。これは、 /etc/php.ini に書き込む。 php.ini が存在しない場合は、 /etc/php.ini.default をコピーして書き換える。書き換える場所は以下の2か所。何行目かは検索した方が早いが、前者がだいたい1060行目、後者がだいたい1210行目ぐらい。
pdo_mysql.default_socket = /tmp/mysql.sock
mysql.default_socket = /tmp/mysql.sock
ちなみに、この /tmp/mysql.sock はMySQLが起動していないと存在しないファイル。起動していない状態で /tmp ディレクトリ内をいくら探しても見つからない。 - 当然だが、 extension の読み込みは必要。以下の2行がコメントアウトされているのなら、コメントを削除しておく必要がある。両方ともだいたい960行目ぐらい。
extension=php_mysql.dll
extension=php_pdo_mysql.dll