WordPressMySQL と、そして何故か IBM BlueMix の話です。

WordPress は wp-config.php ファイルにその設定を記述します。WordPress は(一般的に)MySQL をデータベースとして利用するので、この MySQL データベースの接続設定(ホスト名、DB名、ユーザー、パスワード)もこの中に記述します。具体的にはこんな感じです:
  :
define( 'DB_HOST', 'mysql.xxx.com' ); // MySQL サーバー名(IPアドレス)
define( 'DB_NAME', 'wordpress_db' ); //. MySQL データベース名
define( 'DB_USER', 'wordpress_username' ); //. MySQL ユーザー名
define( 'DB_PASSWORD', 'wordpress_password' ); //. MySQL パスワード
  :
データベースのポート番号に関する設定は特にありません。

MySQL は一般的には(デフォルト状態であれば) 3306 番ポートで待ち受けています。その場合、wp-config.php にはその指定は不要です(何も指定しなくても 3306 番ポートへ接続しに行ってくれます)。


何らかの事情で MySQL が 3306 番以外のポート(例えば 3307 番)で動いていた場合、上記設定では WordPress が MySQL に接続できないので正しく動作しません。そしてポート番号の設定項目はありません。ではどうすればいいでしょうか?


そんなに特殊な指定方法ではないので想像できると思いますが、答はこちらです。ポート番号は DB_HOST の一部として指定できます:
  :
define( 'DB_HOST', 'mysql.xxx.com:3307' );
define( 'DB_NAME', 'wordpress_db' );
define( 'DB_USER', 'wordpress_username' );
define( 'DB_PASSWORD', 'wordpress_password' );
  :

実は IBM BlueMix 環境で MySQL サービスを利用すると 3307 番ポートで稼働するので、WordPress を使うには上記のような設定が必要になります。

「そもそも IBM BlueMix 上で PHP アプリをどうやって動かすか?」についてはこちらのエントリを参照ください。