今天遇到個SQL客戶端連接超時已過期的問題,過程還比較有意思:具體表現在應用ODBC連接的時候,提示超時已過期錯誤,于是打開ODBC重新配置,輸入用戶密碼下一步的時候提示超時已過期。確定以后重新點“下一步”就可以連接上了。關閉ODBC重新打開,還是要連兩次才能連接上。所以關聯ODBC的應用就會報錯。然后,我嘗試用企業管理器進入SQL SERVER,還是提示超時已過期,在企業管理器的選項里面將超時時間設置為40秒,長時間連接后可以連接上,不需要重試。但是ODBC和查詢分析器都和以前一樣需要重試才可進入,汗!ODBC又沒有超時選項可以調節。
于是懷疑網絡通信受阻,PING一下,沒有丟包現象。將網卡設置為10M模式,仍舊沒有改善。把本本接上去,居然不超時,不管是默認4秒的企業管理器還是ODBC都正常的不得了,初步判斷不是網絡通信的問題。
有資料說SQL SERVER 2000需要打補丁,不過我記得是在WIN2003上需要補丁,雖然疑惑還是試試,下載了SQL SERVER 2000 SP4補丁安裝,重啟服務以后,故障依舊。
于是想用管道連接,但是PING服務器名居然出錯,估計元兇在這里了,打開編輯HOSTS文件,將服務器的 IP 和服務器名寫入HOSTS,然后重新嘗試默認超時為4秒企業管理器,PASS,打開ODBC嘗試配置,PASS,于是,這個故障告一段落。 |