小编典典

PHP mySQL-何时是断开数据库连接的最佳时间?

mysql

我使用 惰性连接
来连接到数据库对象中的数据库。从根本上讲,这意味着直到处理完第一个查询后,它才会调用mysql_connect(),并且此后它随后将跳过重新连接。

现在,我的数据库类中有一个方法,该方法disconnectFromDB()几乎可以调用mysql_close()和设置$_connected = FALSE(因此该query()方法将知道再次连接到数据库)。应该在每个查询之后(作为私有函数)还是通过对象从外部调用此方法……因为我在想类似的东西(代码仅是示例)

$students = $db->query('SELECT id FROM students');

$teachers = $db->query('SELECT id FROM teachers');

现在,如果它在每次查询后都关闭,这会减慢很多速度,而不是我将这一行添加到末尾

$db->disconnectFromDB();

还是我应该只在页面的最后一行添加该行?

两者都有哪些优点/缺点?在您的情况下最有效的方法是什么?忘记关闭mySQL连接真的有什么不对劲,除了会损失一点性能之外?

感谢您抽出宝贵的时间来回答。

谢谢!


阅读 724

收藏
2020-05-17

共1个答案

小编典典

据我所知,除非您使用持久连接,否则您的MySQL连接将在页面执行结束时关闭。

因此,您调用断开连接将不会添加任何内容,并且由于您执行的是惰性连接,如果您或其他开发人员犯错并在错误的时间断开连接,则可能导致创建第二个连接。

鉴于此,我只允许我的连接自动关闭。您的页面应该能够快速执行,因此在短时间内保持连接不会造成任何问题。

2020-05-17