我Mysql2
用来查询数据库ruby
。我通过以下方式初始化连接:
client = Mysql2::Client.new(:host => "localhost", :database => 'mydb', :username => "root")
查询成功后,如何关闭客户端连接?如果我不关闭它,我很快就会达到可能打开的最大连接数。
解决方案
感谢@joonty:
client.close
我Mysql2
用来查询数据库ruby
。我通过以下方式初始化连接:
client = Mysql2::Client.new(:host => "localhost", :database => 'mydb', :username => "root")
查询成功后,如何关闭客户端连接?如果我不关闭它,我很快就会达到可能打开的最大连接数。
感谢@joonty:
client.close
使用client.close
. 从文档:
Mysql2::Client#close
立即断开与服务器的连接,通常垃圾收集器会在不再需要连接时自动断开连接。显式关闭它会比等待垃圾收集器更快地释放服务器资源。
您是否有多个只在短时间内使用 mysql 连接的长时间运行的进程?这应该是唯一存在问题的情况。如果您的进程即将结束,那么连接将作为垃圾收集的一部分关闭,因此您的问题出在其他地方。