[Microsoft][ODBC SQL Server Driver ]超時已過期的解決過程和方法

環境:     OS:  window2000 server
        Database:  Sql Server 2000 中文企業版 sp4
        客戶和服務均在一臺機上運行。
 
     客戶的管理系統在正常運行近一個月後出現“[ODBC SQL server dirvier] 超時已過期”錯誤,甚至無法再次登陸數據庫。由於系統曾正常運行過一段時間,因此我認爲由代碼引發此錯誤的機率比較小,而 MS SQL Server相關係統出錯可能性比較高。
   於是我嘗試取消了下圖中,sql server配置屬性-》連接中得超時限制。
config dialog
 
   結果沒有任何效果。[ODBD sql server dirver]超時已過期的問題依然出現。
不過我發現,只要重新註冊 ODBC 一次,又能正常登陸了,只是此後該問題依然會頻繁出現,治標而不治本。爲了儘快解決這個問題,沒有辦法,只有重新安裝了 SQL server 企業版+ SP4 ,可是令人氣結的是問題依然存在。:(
   實在沒有辦法只好上googlebaidu查找前人經驗,也許是該問題產生的原因比較多而複雜吧,根據它他人的經驗竟然沒有一個能解決我係統出現的問題。此時我的心都快崩潰了。
如果這個問題再不解決,就只有整個系統重裝,而這是我最不願意看到的。
  然而“山窮水盡疑無路,柳暗花明又一村”,微軟網站上一篇文章引起我注意。Article ID:300420 “Connnection to SQL server Database Using IP address is unusually slow”。文章說, MDAC2.6 存在一個 bug, 如果用 IP 地址連接數據庫會很慢。這使我想起在註冊 ODBC Driver 的時候,爲了避免 DNS 解析,我採用的正是 IP 地址,會不會這就是問題所在呢。於是我進行了如下操作
  1. ODBC 採用主機名註冊
  2. 在系統的 hosts 文件中增加 IP 與機名映射關係。(這個可能多此一舉)
  3. 升級 MDAC 到 2.7 版本。由於不知道如何查看當前 MDAC 的版本,就直接從微軟網站下載的 2.7 。
    時間已經過去快3天了,客戶沒有報告此錯誤出現。我想,大概我找到了它的解決辦法。 於是記下來,防備忘記。 :)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章