Home > 未分類 Archive

未分類 Archive

MacportでphpをupgradeしたらMySQLと接続できなくなった

macport を間違えてupgradeしてしまって、その後動いていたものが動かなかったりとてんやわんや・・・そのひとつに、PHPにてMySQLとの連携ができなくなってしまった。

【結果】
今まで使っていた PHPが 5.2x だったんだけど、今回インストールした 5.3.1x では php.ini の設定が多少異なる?っぽくて、うまく設定が有効になっていなかったみたい。再度雛形を php.ini にリネームして設定し直したところうまくいった。

【詳細】
いつも extension=xxx の部分をコメントアウトしただけで上手くいっていたような気がするのだけど、何回やってもうまくいかない。ぐぐってみたところ、インストール後に以下のメッセージが表示されているらしい。

To use mysqlnd with a local MySQL server, edit /opt/local/etc/php5/php.ini and set
mysql.default_socket, mysqli.default_socket and pdo_mysql.default_socket
to /opt/local/var/run/mysql5/mysqld.sock

/opt/local/etc/php5/ にある php.ini-development を php.ini にリネームし、以下3つをコメントアウト。(ini-development と ini-production があるけれど、ローカルで使うだけなので適当)

  extension=php_mysql.dll
  extension=php_mysqli.dll
  extension=php_pdo_mysql.dll

で、メッセージにあるように
mysql.default_socket, mysqli.default_socket, pdo_mysql.default_socket
の3つに対して以下値を設定。
/opt/local/var/run/mysql5/mysqld.sock

あと、これも必要っぽい? 順番が前後しちゃってるかもだけど。
port でインストール: php5-mysql,

そしたらちゃんと phpinfo() に mysql の設定が表示された。

ついでに、phpmyadmin用も兼ねて以下インストール。
php5-mcrypt, php5-mbstring

[mbstring]は、自分はUTF8を使うように設定。

Home > 未分類 Archive

アーカイブ
カテゴリー

Return to page top