【发布时间】:2016-03-04 15:25:52
【问题描述】:
我正在编写一个使用 mysql2 gem 的简单 Ruby 脚本。
为了正确终止与数据库的连接并避免Too many connections 错误,我将连接存储到变量mysql 中,如下所示:
mysql = Mysql2::Client.new(:host => hst, :username => usr, :password => pass, :database => db, :connect_timeout => 30)
然后我关闭连接:
mysql.close
当这种情况发生时,我得到:
closed MySQL connection
在控制台中。
如何实现实例方法#close 找到here 而不会在终端中显示closed MySQL connection?
【问题讨论】:
-
closed MySQL connection实际上是一条错误消息。关闭连接后是否执行任何查询? -
@stefan 这是一个循环,将
retry直到db可以访问。那么closed MySQL connection错误是什么意思呢? -
这意味着您正在尝试使用关闭的连接运行查询,例如
mysql.close; mysql.query(...) -
@stefan 你是 100% 正确的。谢谢。