データベースからデータを抽出するために、mysql (5.1) ruby (1.8.7) コネクタを使用しています。一部のクエリは、必要以上に長く実行される傾向があるため、これらに接続タイムアウトを設定したいと思います。関連する投稿で提案された解決策は次のとおりです。
require 'rubygems'
require 'mysql'
# connect to the database
db = Mysql.real_connect( 'server', 'user', 'password', 'schema' )
# configure read timeout
db.options(Mysql::OPT_READ_TIMEOUT, 10)
# query and process
begin
db.query("select * from ..").each_hash do |row|
# process data if query returned
end
rescue Mysql::Error => err
# handle timeout
end
しかし、これは私にはうまくいかないようです。私が求めていることを達成する理由と方法はありますか? ありがとう。