首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql_pconnect() - Nginx,php5-fpm,mysql

问mysql_pconnect() - Nginx,php5-fpm,mysql
EN

Stack Overflow用户
提问于 2015-03-02 05:06:51
回答 1查看 446关注 0票数 1

我有一个游戏,分为三个世界。今天我在我的游戏中更新了world 3。

在更新mysql_pconnect之后,随机更改了一个选定的数据库,尽管我已经设置了数据库's3‘。几秒钟后,我在我的网站上看到了来自数据库's2‘或's1’的数据。

我为我的数据库's3‘创建了一个新用户,当我连接一切正常时,但是mysql为一个用户连接创建了新的线程,那么会有什么问题呢?

在任何情况下,我对mysql_pconnect使用相同的用户,那么我应该为每个数据库都创建一个用户吗?

代码语言:javascript
复制
class MySQL {

static public function ConnectToDb($Host, $User, $Password, $Database) {

    @mysql_pconnect($Host, $User, $Password) or die(mysql_error());
    mysql_select_db($Database);
    mysql_set_charset('utf8');

}

$System['BazaDanych'] = array('login' => 'root', 'haslo' => '', 'host' => 'localhost', 'baza' => 's2');

MySQL::ConnectToDb($KonfiguracjaSystemu['BazaDanych']['host'] , $KonfiguracjaSystemu['BazaDanych']['login'] , $KonfiguracjaSystemu['BazaDanych']['haslo'] , $KonfiguracjaSystemu['BazaDanych']['baza']);

它是我本地配置中的代码。

TOm

EN

回答 1

Stack Overflow用户

发布于 2015-03-02 22:49:26

首先,当连接时,该函数将首先尝试查找已经使用相同的主机、用户名和密码打开的(持久)链接。如果找到,将返回它的标识符,而不是打开新的连接。

其次,当脚本执行结束时,与SQL服务器的连接不会关闭。相反,链接将保持打开状态以供将来使用(mysql_close()不会关闭由mysql_pconnect()建立的链接)。

有关更多信息,请参阅:

http://php.net/manual/en/function.mysql-pconnect.php

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

https://stackoverflow.com/questions/28799076

复制
相关文章

相似问题

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