OS X ServerにMySQLを入れてみる

このサイトはOS X MavericksとServer.appの組み合わせて出来ています。
CMSを動かそうと思って、最初にやらなければいけなかったことは、MySQLの導入でした。

大抵のCMSはMySQLを利用しようとします。
幾つかのCMSではPostgreSQLを使える場合もありました。通常ファイルをデータベースとする簡易的なものもありました。
PGSQLは以前使ったことがあったので、昔のphpファイルを動かせるかとも思いました。
しかし、OS Xでこのデータベースを利用しているので、却ってMySQLを利用する方が、間違ってデータベースを壊してもシステムを引きずって落とさない分有利かと思い直しました。

OS Xは「素のままではMySQLは入っていない」と、何処かに書いてあったので別口に入れる事にしました。
一番簡単なのは(慣れているし、既に入っていたし)MacPortsからだろうと、全く他の方法を考慮に入れないでMacPortsからインストールしました。
MySQLは、ただ単にmake installするだけで簡単に入ります。
確かLaunchDeamonにも自動で登録された筈です。弄った記憶は無いのに再起動してもきちんと立ち上がっています。

それからphpのmysql用インターフェースを加えます。
もともと入っているphpが5.4だったので、それに合わせてphp54-mysqlをインストールします。
これで環境は揃いました。

次はphp.iniの書き換えです。
/etc/php.ini
のmysql関係の設定をしました。
先ず、moduleを組み込みました。
MacPortsの関連ファイルは全て
/opt/local/
の下に入ります。MySQL関連は
/opt/local/lib/mysql56/bin/
/opt/local/lib/php54/extensions/no-debug-non-zts-20100525/

に入っていました。
前者にはユーティリティ関係が入っているようです。phpのモジュールは後者にありました。

ここで見つけたmysql.soを、php.iniに書き込みます。
extension = /opt/local/lib/php54/extensions/no-debug-non-zts-20100525/mysql.so
あれっ?……組み込んだ筈ですが、見当たりません。でも、動いています。
何故だろう??

次はsocketの定義です。
socketは、portから入れるとデフォルトから離れたところに出来上がるので、ちゃんと定義しておかないと接続できません。
これは何度も経験して、確認済みです。
mysqlで検索すると3カ所出てきたので、それに全部加えておきました。
pdo_mysql.default_socket = /opt/local/var/run/mysql56/mysqld.sock
mysql.default_socket = /opt/local/var/run/mysql56/mysqld.sock
mysqli.default_socket = /opt/local/var/run/mysql56/mysqld.sock

あとはmysql.default_portも入れたかもしれません。既に入っていたかもしれません。(覚えていません)

これでおしまい。
簡単なものです。

気をつけないといけないのは、Server.appをアップデートする度に設定ファイルが初期化されてしまうということ。
これで何度泣かされたことか。(懲りずにバックアップしないでインストールしてしまうから)

コメントを残す