由于用了thinkphp的最新版本,而服務(wù)器剛好用的wdcp配置升級的php5.3.17,結(jié)果發(fā)現(xiàn)默認(rèn)沒有配置pdo_mysql,出現(xiàn)錯(cuò)誤:
Undefined class constant 'MYSQL_ATTR_INIT_COMMAND'
于是如下解決:(耽誤下班。
編譯安裝操作就是要在編譯的源文件下使用phpize來./configure和make
先通過phpinfo查看一些必要的信息
確認(rèn)了pdo_mysql在phpinfo里面沒有,確實(shí)需要安裝
1.找到編譯需要的文件:
方法一:
安裝好wdlinux并且升級到php5.3.17后,找到php的源碼包所在位置,因?yàn)槊總(gè)人下載的位置不同,需要自行查找,可以使用find搜索
比如我的: /software/php-5.3.17/ext/pdo_mysql,進(jìn)入此源碼包下pdo_mysql擴(kuò)展的文件夾
方法二:
重新在網(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.進(jìn)入到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查找可以再確認(rèn)下,輸入如下命令
/www/wdlinux/apache_php-5.3.17/bin/phpize
運(yùn)行后得到:
Configuring for:PHP Version:20090626...
類似信息表示成功,否則會(huì)報(bào)錯(cuò)。
常見錯(cuò)誤:Cannot findconfig.m4
出現(xiàn)這個(gè)錯(cuò)誤的原因是需要cd進(jìn)入擴(kuò)展的文件夾再運(yùn)行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-安裝的擴(kuò)展=mysql_config地址
make
make install
分別運(yùn)行,中途無報(bào)錯(cuò)就OK了
3.修改php.ini文件
然后打開 php.ini文件,
并添加一行
extension=pdo_mysql.so
4.重啟web服務(wù)
service http drestart
5.phpinfo查看是否安裝成功
看到“pdo_mysql”恭喜成功了
歡迎光臨 WDlinux官方論壇 (http://cd-genova.com/bbs/) | Powered by Discuz! 7.2 |