2010-08-03 36 views
5

我正在使用R讀取來自使用RODBC軟件包的MySQL數據庫的一些數據。然後處理數據,並將一些結果發送回數據庫。問題在於服務器由於不活動而在大約一分鐘後關閉連接,這是在本地處理數據所需的時間。它是一個共享服務器,所以主機不會提高超時時間。來自R的MySQL odbc超時

我認爲有兩種可能得到這個 1左右),打開每個數據庫事務之前的連接和 2後立即將其關閉)發送一些小「平」命令到服務器每隔30秒左右,讓服務器知道我還在那裏。

我可以很容易地實現第一個,但是它不斷打開和關閉連接似乎很慢。任何人都知道第二個有效的命令?或者更好的方法呢?

回答

4

第一個解決方案是我喜歡的。用R這樣的單線程程序來完成後者是非常困難的。如果R正在忙於運行分析,則無法處理該ping。除非您正在進行數百次讀取/寫入操作,否則打開和關閉連接的方法不應引入大量的開銷。

+0

我終於和#1一起去了,有很多或讀/寫,但我想'它是它是什麼' – stotastic 2010-08-05 00:00:24