繁体   English   中英

MySQL连接重用问题

[英]MySQL connection reuse problem

我正在尝试重用mysql连接。 因此,我在databasemanager.php类中有一个全局变量,该变量返回连接。

问题是,在某个特定页面上,mysql也在执行先前的查询。

看起来如果重新使用相同的连接,则连接对象中有一些剩余查询将被执行。 可能吗 ? 如何解决这个..

 function getDBConnection(){
   global $conn;
   if (!empty($conn)){
// echo $conn ;
    return $conn;
   }
   $conn =  mysql_connect($GLOBALS['HOSTNAME'],$GLOBALS['DBUSER'],$GLOBALS['DBPASS']);

    if (!$conn) {
     die('Could not connect: ' . mysql_error());
    }

    mysql_select_db($GLOBALS['DBNAME'],$conn);
    return $conn;

}

代码看起来像这样

你看过mysql_pconnect吗?

根据文档:

mysql_pconnect()的行为与mysql_connect()非常相似,但有两个主要区别。

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM