Linuxサーバーで異なるrプログラムを実行しています。プログラムはデータベース接続に失敗し、以下のエラーが発生します。 -LinuxでRODBCを使用してSQL Serverに接続する際にエラーが発生しました
1: In odbcDriverConnect(paste0("DRIVER={SQL Server}; server=", server, : [RODBC] ERROR: state 08001, code 0, message [unixODBC][FreeTDS][SQL Server]Unable to connect to data source
2: In odbcDriverConnect(paste0("DRIVER={SQL Server}; server=", server, : [RODBC] ERROR: state 01000, code 20002, message [unixODBC][FreeTDS][SQL Server]Adaptive Server connection failed
3: In odbcDriverConnect(paste0("DRIVER={SQL Server}; server=", server, : [RODBC] ERROR: state 01000, code 20017, message [unixODBC][FreeTDS][SQL Server]Unexpected EOF from the server
4: In odbcDriverConnect(paste0("DRIVER={SQL Server}; server=", server, : ODBC connection failed Execution halted
時々、プログラムはエラーを起こすことなく完全に実行されます。ときには失敗することもあります。私は問題が何であるかを正確に把握することができません。
私はそれが動作していますかを確認するためにコードの一部をテストした:
library(RODBC)
library(RODBCext)
for (i in 1:100){
dbhandle <- odbcDriverConnect(paste0("DRIVER={SQL Server}; server=",server,"; database=",dbname,"; uid=",username,"; pwd=",password, "; TDS_Version=8.0; Port=1433;", sep=""))
query <- "select * from analysis"
analysis <- sqlExecute(dbhandle, query = query, fetch = T)
odbcClose(dbhandle)
}
時にはそれが完全に実行なってき。ときどきそれは間に失敗します(たとえば、データベースに接続すると45回失敗しました)
私はこのような問題をWindows環境では直面しませんでした。
この場合、問題が何であるか正確に知りたいです。それは何かネットワーク、ドライバ、私の接続文字列またはデータベースに関連しています。
この問題の解決策は何でしょうか。
これは役に立ちます:https://stackoverflow.com/questions/24493749/rodbc-ms-sql-access-from-ubuntu-using-freetds –
@NeerajKumar、odbc.inst.iniのTDSバージョンを更新しました。しかし、それは役に立たなかった。 – suchait
@NeerajKumar、odbc.iniとfreetds.confも更新されました。それでもエラーが出ます。 – suchait