首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php和mysql的问题,为什么mysql_pconnect()不可用?

问php和mysql的问题,为什么mysql_pconnect()不可用?
EN

Stack Overflow用户
提问于 2009-04-08 08:41:09
回答 3查看 5K关注 0票数 1

我已经安装了各种PHP包,以便能够在Apache中使用PHP,但也可以在命令行中使用PHP。从这两个方面,我都需要能够连接到MySQL数据库。很简单对吧?这就是我所想的,但是使用php-cli,我会收到以下错误:

代码语言:javascript
复制
Fatal error: Call to undefined function mysql_pconnect()

我尝试从零开始,删除所有依赖的包和配置,如下所示:

代码语言:javascript
复制
sudo apt-get --purge remove php5 libapache2-mod-php5 php5-cli php5-mysql

然后运行以下命令来安装包:

代码语言:javascript
复制
sudo apt-get install php5 libapache2-mod-php5 php5-cli php5-mysql

然后我发现cli使用的是哪个php.ini:

代码语言:javascript
复制
php -r "phpinfo();" | grep php.ini

这给了我这个:

代码语言:javascript
复制
Configuration File (php.ini) Path => /etc/php5/cli/php.ini

然后,我取消了扩展部分中的“mysql.so”注释,但是当我这样做并运行以下命令时,它会说:

代码语言:javascript
复制
PHP Warning:  Module 'mysql' already loaded in Unknown on line 0

因此,出于某种原因,他认为它已经加载了,但是不管是否启用了“mysql.so”,php都找不到'mysql_pconnect‘函数。

我知道有一些部分可以启用持久连接,默认情况下是打开的,标准函数'mysql_connect‘也不可用。

我遗漏了什么?谢谢!

更新:

正如Bart S. 'php -r所建议的那样,"phpinfo();“‘:

MYSQL_SOCKET => /var/run/mysqld/mysqld.sock MYSQL_INCLUDE => -I/usr/include/mysql MYSQL_LIBS => -L/usr/lib -lmysqlclient mysql.allow_persistent => On => On .还有更多

来自Jakačar。‘'php -v’显示:

PHP5.1.2 (cli) (建于:2009年2月11日19:55:22)

并从php交互模式'php -r 'var_dump(extension_loaded("mysql"));‘什么都不给!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-04-08 08:50:59

代码语言:javascript
复制
php -i | grep mysql

第一行应包括:

代码语言:javascript
复制
Configure Command =>  '../configure' ... '--with-mysql=shared,/usr'

也要检查

代码语言:javascript
复制
grep extension_dir /etc/php5/cli/php.ini

应该是:extension_dir = /usr/lib/php5/extensions,然后检查/usr/lib/php5/extensions/mysql.so的权限,如果链接正确的话:

代码语言:javascript
复制
ldd  /usr/lib/php5/extensions/mysql.so
票数 1
EN

Stack Overflow用户

发布于 2012-05-18 10:25:03

您不能在CLI模式下使用pconnect。您没有一个持久的进程,如web服务器,它可以容纳打开的连接。

票数 1
EN

Stack Overflow用户

发布于 2009-04-08 09:04:43

cli模式下的pconnect有意义吗?也许这是“按计划工作”。

注意:注意,这类链接只有在使用模块版本的PHP时才能工作。有关详细信息,请参阅持久数据库连接部分。

http://de2.php.net/mysql_pconnect

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/729070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档