在每个PHP页面的开头,我打开到MySQL的连接,在整个页面中使用它,并在页面末尾关闭它。但是,我经常在页面中间重定向到另一个页面,因此在这些情况下连接不会关闭。我知道这对web服务器的性能不是坏事,因为PHP会自动关闭每个页面末尾的所有MySQL连接。这里是否还有其他需要记住的问题,或者您真的不必担心在PHP中关闭数据库连接吗?
$mysqli = new mysqli("localhost", "root", "", "test");
...do stuff, perhaps redirect to another page.
我在Symfony版本2.8和PHP中使用DBAL来查询我的数据库中的数据,但是在我得到结果并且不再需要它们之后,我想释放可能被缓存的数据,并等待我检索它。
// I've already opened the database connection somewhere before this code is executed.
$s = 'SELECT * FROM MyTable;';
$conn = $this->get( 'database_connection' );
$query = $conn->
我有一个问题,以为我会说出最简单的话。在LAMP堆栈上有两个应用程序,一个PHP和另一个Java,它们只执行相同的操作:运行一个简单的查询:
SELECT * FROM test
PHP执行总共需要30 ms
Java执行的总开销为230 ms
在本地MySQL客户端上运行的查询总共接受10-15 ms。
Java每次使用~200 ms,只是为了建立到数据库的连接。我知道PHP使用某种内置的连接池,因此它不需要每次都建立一个新的连接,只需要使用30 ms作为结果。
同样的事情在Java上也有可能吗?到目前为止,我没有做到这一点。我尝试使用连接池,完全没有更改,但连接到数据库仍然需要相同的时间。
我正在修复一个使用PHP5.4和mySQL的web应用程序。
有时mySQL会显示错误“太多的连接”,我已经读过这个错误,并且我知道它在使用之后是重要的紧密连接。显然,在所有数据库操作之后,我都调用了mysql_close()。
这个应用程序在许多机器上被许多不同的人使用,所以太多的连接可能是“正常的”,而我所要做的就是增加max_connections变量。
我的怀疑是,当我做show status like '%onn%'时,结果是
Threads_connected是对的吗?它们在mysql_close()调用之后继续进行。我的max_connections限制是1
public function getActiveUsers(){
$result = $this->con->query("SELECT * FROM `USERS` where `IsActive`=1");
$users = array();
while ($item = $result->fetch_assoc()) {
$users[] = $item;
}
return $users;
}//End Function
这是我的PHP函数,用于从我的DB (我的仪表板)获取活动用户。大多数其他函
我们正在使用.Net Entity Framework来完成与数据库相关的工作。我们的数据库是Sybase SQL Anywhere。
using (AndeDBEntities db = new AndeDBEntities(decryptConnStr()))
{
}
我们使用了大量的上述语句来访问数据库。我的问题是,每次访问完成后,我们都需要关闭连接吗?该怎么做?
有一次我看到“超过数据库服务器连接限制”的错误。我想知道我们的数据库连接代码中一定有什么错误。