ruby mysql2远程数据库查询有时只能工作

时间:2015-11-26 16:18:32

标签: mysql ruby

我的应用程序的Ruby工作人员使用mysql2 gem通过MYSQL连接到我的Rails应用程序数据库。我有两个工作人员:1个与应用程序在同一服务器上,1个远程。当以下UPDATESELECT查询在远程服务器上运行时,它们不会更新/选择数据。

variablename = true
othervariable = false

client = Mysql2::Client.new(:host => @app_ip_address, :username => @mysql_username, :password => @mysql_password)
client.query("USE `publisher_support_automation_app`;")
update_query = %{ UPDATE tablename SET
                      variablename = #{variable1},
                      othervariable = #{variable2},
                      WHERE id = #{@id};
                      }.gsub(/\s+/, ' ')
client.query(update_query) #=> no error, data not updated

res = client.query("SELECT * FROM tablename WHERE id = #{@id};")
res.each do |row|
  @logger.debug(row.inspect) #=> nothing logged
end
client.close

但是,其他UPDATESELECT(和INSERT)命令运行正常。当我在IRB中运行确切的命令时,它们工作正常。

我按this post启用了MYSQL错误记录,并且没有记录任何错误。

远程计算机使用的是Ruby版本2.1.1p76,MYSQL Server版本5.1.73和mysql2版本0.4.1。该应用程序使用的是Ruby版本2.0.0p353,MYSQL Server版本:5.1.73和mysql2版本0.3.18。

0 个答案:

没有答案