お客さんから「PDO の mysql ドライバ入れて!」と連絡あり。
うちの管理しているサーバの一つで、PHP プログラム動かそうとしたら「The mysql driver is not currently installed」って怒られたって。
ということで mysql driver をインストールしたわけだが、CentOS 4.8 のサーバなので、yum インストールしようにもリポジトリがもう正規の場所に無いし(^^;、設定変更するのも面倒なので手動でインストール。
# cd /usr/local/src# /usr/local/bin/pecl download pdo_mysql# tar xvfz PDO_MYSQL-1.0.2.tgz# cd PDO_MYSQL-1.0.2# /usr/local/bin/phpize# ./configure --with-pdo-mysql=/usr/local/mysql# make# make install
で、すんなり入ったんだけど、/usr/local/lib/php.ini に、
extension = /usr/local/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so
って追加しても、一向に PDO mysql ドライバがロードされない。
# /usr/local/bin/php -i|grep PDOPDOPDO support => enabledPDO drivers => sqlite2, sqlitePDO Driver for SQLite 3.x => enabled
というまんま。
しばし悩んだが、結局、extension_dir の設定が、
extension_dir = /usr/lib64/php4
みたいに腐ってた(^^;
古い環境(PHP4系)から設定を移してる時、間違って入れちゃったんだな(^^;
これを、
extension_dir = /usr/local/lib/php/extensionsextension = no-debug-non-zts-20060613/pdo_mysql.so
みたいに設定してやれば、無事、
# /usr/local/bin/php -i|grep PDOPDOPDO support => enabledPDO drivers => sqlite2, sqlite, mysqlPDO Driver for MySQL, client library version => 5.1.25-rcPDO Driver for SQLite 3.x => enabled
となった。
う~む、php.ini の内容、一度ちゃんとチェックしといた方がええなあ(^^;;;