免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 10163 | 回复: 4
打印 上一主题 下一主题

[Web] 编译php添加pdo_mysql [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-28 17:31 |只看该作者 |倒序浏览
我使用redhat linux 5.1 系统,
mysql,apache使用系统自带
之前编译过php支持了gd库,现在公司需要php支持pdo_mysql,但重新编译是加了--enable-pdo=shared --with-pdo-mysql=shared,编译完后,用phpinfo()查看,没有pdo_mysql出现。
在网上有看到可以单独安装pdo_mysql,下载源码包,安装,在php.ini中添加指向extension=pdo_mysql.so,但仍然在phpinfo()中不能出现,求救各位老大,帮解决。
php使用 php5.2.5
mysql使用5.0.22
apache使用2.2.3

论坛徽章:
0
2 [报告]
发表于 2008-10-29 16:25 |只看该作者
原帖由 xingbowu0419 于 2008-10-28 17:31 发表
我使用redhat linux 5.1 系统,
mysql,apache使用系统自带
之前编译过php支持了gd库,现在公司需要php支持pdo_mysql,但重新编译是加了--enable-pdo=shared --with-pdo-mysql=shared,编译完后,用phpinfo() ...

zlib的安装没有
贴编译参数

论坛徽章:
0
3 [报告]
发表于 2008-10-29 17:03 |只看该作者
pdo_mysql  需要先安装 pdo模块,检查一下pdo装了吗?

论坛徽章:
0
4 [报告]
发表于 2008-10-30 09:37 |只看该作者
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/sbin/apxs --with-bz2 --enable-zip --enable-calendar --with-mysql=/usr --enable-pdo=shared --with-pdo-mysql=shared  --with-iconv  --enable-mbstring --with-curl --with-snmp --with-tidy --enable-exif --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-ttf=/usr --with-freetype-dir=/usr --enable-gd-native-ttf --with-ming=/usr --with-xmlrpc --enable-soap --enable-sockets --with-mcrypt --with-mhash --enable-shmop --enable-dba --with-gdbm --with-db4 --with-imap --with-imap-ssl --with-kerberos --with-mcrypt=/usr --with-mhash=/usr --enable-pcntli

这是我的编译参数,使用phpinfo查看时,pdo已经出来了,只是pdo_mysql没有出来。pdo模块已经安装上了,zlib也装上了。

[ 本帖最后由 xingbowu0419 于 2008-10-30 09:38 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2008-10-30 16:18 |只看该作者
按照官方的说法,php5.1及以上版本是自带PDO的,有两种配置方式(请使用第2种方式,第1种我没搞成功):

1、以共享模块的方法编译php,这样的好处是pdo作为一个单独的so,可以方便更新版本,在对php configure时需要增加参数:

首先下载pdo的安装包,当前最新版本是1.0.3,config、编译后安装就可以(按照官方解释,php自己编译出来后应该是有这个so的,我没找到,所以下载了pdo的包编译安装)。

接着编译php:
./configure --with-zlib --enable-pdo=shared --with-pdo-sqlite=shared --with-sqlite=shared --with-pdo-mysql=shared --with-mysql=shared
如果使用该方式,必须要指明Mysql和sqlite都为共享模块方式。
     Php编译安装后,在php.ini中增加extension=pdo.so这一行,在Php启动时动态的加载pdo的库,最好指明pdo.so的路径。
   我按该方式安装后发现PDO的驱动中没有任何数据库,由于时间原因,没有继续追查。

2、使用非共享模块的方式,也就是pdo作为php的一部分。在config php时修改一些参数即可:
     './configure' '--with-gd=/usr' '--enable-gd-native-ttf' '--with-freetype-dir=/usr' '--with-apxs2=/usr/local/apache2/bin/apxs' '--with-zlib' '--enable-pdo' '--with-pdo-mysql' '--with-mysql'

[ 本帖最后由 tomorrow819 于 2008-10-30 16:19 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP