如果我们不关闭或结束在节点js中的mysql连接,它在功能上是否会产生影响。
我是这样做的
var mysql = require('mysql');
var connection = mysql.createConnection(...);
connection.query('SELECT 1', function(err, rows) {
// connected! (unless `err` is set)
});我的代码中的任何地方都不会终止mysql连接。我的问题是,是否有必要关闭mysql连接。如果我们不关闭mysql连接,我将来还会面临任何其他问题吗?
请帮助我熟悉nodejs
EDIT1 I不会遇到任何问题,如无法连接,太多连接无法打开等,意味着有任何与资源相关的问题吗?正确的。
EDIT2
如果我们不手动结束它,或者使用end函数,那么在哪个瞬间mysql连接就会关闭呢?
发布于 2012-05-31 09:09:09
你应该关闭连接。
您所做的点取决于您的程序对该连接所做的操作。
如果程序寿命很长,只需要一个连接,但是持续使用该连接,那么您可以只打开一个连接,但是如果需要的话,应该准备重新打开连接--例如,如果服务器重新启动的话。
如果程序只打开一个连接,执行一些操作,然后在一段时间内不使用该连接,则应该在不使用它的情况下关闭连接。
如果程序是短暂的,即它建立一个连接,做一些事情,然后退出,你可以不关闭连接,因为它会自动关闭当你的程序退出。
发布于 2012-12-24 15:59:18
实际上,您会遇到像MySQL这样的问题:
“主机由于许多连接错误而被阻塞;用‘mysqladmin刷新-主机’解除阻塞”
因为MySQL将开始将那些失败的断开计算为“连接错误”。然后,在MySQL服务器上执行刷新主机之前,数据库仍然无法使用。我知道这是事实,它发生在我们的NodeJS项目中。
编写一些代码,在使用connection.end()或connection.destroy()的任何输出或呈现语句之前显式关闭db连接
发布于 2012-05-31 07:42:25
不,不用关了。
https://stackoverflow.com/questions/10829333
复制相似问题