Board logo

标题: [分享] 再来折腾php升级,提供另一种添加pdo_mysql的方法 [打印本页]

作者: adyanced    时间: 2013-5-25 17:05     标题: 再来折腾php升级,提供另一种添加pdo_mysql的方法

本帖最后由 adyanced 于 2013-5-25 17:12 编辑

话说我要在服务器上安装的软件需要php 5.3以上版本,同时要有pdo mysql,所以昨天按照论坛方法将myphp升级到了5.3.17,然后再按照论坛里的方法装上了pdo_mysql,phpinfo也显示有了pdo_mysql,版本是5.1.63,就是原来的php版本。

软件自动检测环境一切满足条件,可是程序运行还是出现:
        PHP Fatal error:  Undefined class constant 'MYSQL_ATTR_FOUND_ROWS'

真是命苦。


翻遍google,都说这是php 5.3以前的一个 bug,5.3之后的已经加入了这个常数。可我明明已经升级到php 5.3.17了,难道那个该死的软件认为我用的还是老版本?

回头再看论坛里面添加pdo_mysql的脚本,发现是从http://pecl.php.net/package/PDO_MYSQL下载,然后编译成扩展模块添加进php的。进入pecl,看到
1.jpg
原来2006年开始就把pdo mysql内置到php里面,不再支持这个升级了。于是想是不是这种安装模式有点欠妥呢,人家早就内置了,干嘛非要给它外部打个补丁。


折腾。幸亏有快照。


重新下载php5.3的升级脚本,不忙运行,先修改php_up53.sh,查找./configure字段,在这行的末尾加上如下参数(我用的apache,用nginx的话,改对应的内容

--with-mysql=mysqlnd--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd

这样php就把pdo_mysql作为内置功能,而不是扩展模块动态加载,加上mysqlnd是因为怀疑我用的那个软件是不是也需要这个功能。反正php5开始也把它作为内置的了,就一起编译吧。


升级php5.3,成功!
2.jpg

3.jpg

4.jpg

5.jpg

我的软件也能跑起来了,当然不知道是不是也装了mysqlnd原因。


个人觉得既然php已经内带了pdo,那么再用外部扩展可能就不太合适了,毕竟那个模块已经那么多年没有维护了,而php还在不断前进,谁知道它和php能不能组建和谐社会呢。对于其他一些php5已经内置的东西,也可以用这个方法来添加。

图片附件: 1.jpg (2013-5-25 16:49, 31.58 KB) / 下载次数 6621
http://www.wdlinux.cn/bbs/attachment.php?aid=3021&k=39e44557c722e2a07e1b163ae7e2aa21&t=1714345233&sid=IRIy18



图片附件: 2.jpg (2013-5-25 16:58, 24.12 KB) / 下载次数 6639
http://www.wdlinux.cn/bbs/attachment.php?aid=3022&k=5d4f1fc4731af723c348b3d2bde9fb1b&t=1714345233&sid=IRIy18



图片附件: 3.jpg (2013-5-25 16:59, 28 KB) / 下载次数 6747
http://www.wdlinux.cn/bbs/attachment.php?aid=3023&k=739d3c07338ce6ee13037fed12b3182b&t=1714345233&sid=IRIy18



图片附件: 4.jpg (2013-5-25 16:59, 39.28 KB) / 下载次数 6645
http://www.wdlinux.cn/bbs/attachment.php?aid=3024&k=4eda648716f824968b50da7cffdda745&t=1714345233&sid=IRIy18



图片附件: 5.jpg (2013-5-25 16:59, 37.9 KB) / 下载次数 6633
http://www.wdlinux.cn/bbs/attachment.php?aid=3025&k=d6145086c7c77e60f79220b9eee0b0b0&t=1714345233&sid=IRIy18


作者: adyanced    时间: 2013-5-25 17:08

补充一条,用这个方法添加pdo_mysql的话,不用到php.ini里面去添加extensions了,因为它现在是正房,不是小妾
作者: admin    时间: 2013-5-26 18:34

不错
作者: smallhe    时间: 2014-7-7 23:19

这个解决我大问题.谢谢
作者: bit    时间: 2014-8-7 09:53

php 5.3.28 好像默认添加了该扩展 我升级后就直接用的




欢迎光临 WDlinux官方论坛 (http://www.wdlinux.cn/bbs/) Powered by Discuz! 7.2