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