本帖最后由 wcjwhl 于 2015-7-24 20:08 編輯
由于用了thinkphp的最新版本,而服務(wù)器剛好用的wdcp配置升級的php5.3.17,結(jié)果發(fā)現(xiàn)默認沒有配置pdo_mysql,出現(xiàn)錯誤:
Undefined class constant 'MYSQL_ATTR_INIT_COMMAND'
于是如下解決:(耽誤下班。
編譯安裝操作就是要在編譯的源文件下使用phpize來./configure和make
先通過phpinfo查看一些必要的信息 

確認了pdo_mysql在phpinfo里面沒有,確實需要安裝
1.找到編譯需要的文件: 方法一: 安裝好wdlinux并且升級到php5.3.17后,找到php的源碼包所在位置,因為每個人下載的位置不同,需要自行查找,可以使用find搜索 比如我的: /software/php-5.3.17/ext/pdo_mysql,進入此源碼包下pdo_mysql擴展的文件夾
方法二: 重新在網(wǎng)上下載了新的pdo_mysql mkdir tmp_pdo_mysql cd tmp_pdo_mysql wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz tar zxvfPDO_MYSQL-1.0.2.tgz cd PDO_MYSQL-1.0.2
2.進入到pdo的文件夾后,執(zhí)行phpize 配置和編譯文件 找到phpize的路徑,wdcp的一般應(yīng)該是:/www/wdlinux/apache_php-5.3.17/bin/phpize,具體可以通過phpinfo里面查看,phpinfo第三行“ConfigureCommand”里面就有記錄,比如:“'./configure''--prefix=/www/wdlinux/apache_php-5.3.17'”,那么phpize就應(yīng)該在/www/wdlinux/apache_php-5.3.17/里面,通過find查找可以再確認下,輸入如下命令
/www/wdlinux/apache_php-5.3.17/bin/phpize
運行后得到: Configuring for:PHP Version:20090626... 類似信息表示成功,否則會報錯。
常見錯誤:Cannot findconfig.m4 出現(xiàn)這個錯誤的原因是需要cd進入擴展的文件夾再運行phpize(也就是前面說的第1步)。
成功后輸入?yún)?shù): ./configure --with-php-config=/www/wdlinux/apache_php-5.3.17/bin/php-config --with-pdo-mysql=/www/wdlinux/mysql/bin/mysql_config
解釋一下
./configure --with-php-config=php-config地址 --with-安裝的擴展=mysql_config地址
make make install
分別運行,中途無報錯就OK了
3.修改php.ini文件 然后打開 php.ini文件, 并添加一行 extension=pdo_mysql.so
4.重啟web服務(wù) service http drestart
5.phpinfo查看是否安裝成功 看到“pdo_mysql”恭喜成功了 |