2017計(jì)算機(jī)等考三級(jí)數(shù)據(jù)庫輔導(dǎo):解決連接SQLserver時(shí)間長的問題

字號(hào):


    使用SQL Server的朋友可能知道當(dāng)我們連接到 SQL Server 7.0 或 SQL Server 2000 數(shù)據(jù)庫時(shí)所花的時(shí)間可能比預(yù)期的要長。在某些報(bào)告的情況中,其表現(xiàn)為向客戶端應(yīng)用程序報(bào)告“超時(shí)已過期”錯(cuò)誤,而且連接嘗試失敗。 本文主要給大家介紹該錯(cuò)誤現(xiàn)象和原因及解決方案。
    錯(cuò)誤現(xiàn)象:
    當(dāng)安裝 Microsoft 數(shù)據(jù)訪問組件 (MDAC) 版本 2.6 后,每次嘗試使用 IP 地址(而不是服務(wù)器名稱)連接到 SQL Server 7.0 或 SQL Server 2000 數(shù)據(jù)庫時(shí)所花的時(shí)間可能比預(yù)期的要長。在某些報(bào)告的情況中,其表現(xiàn)為向客戶端應(yīng)用程序報(bào)告“超時(shí)已過期”錯(cuò)誤,而且連接嘗試失敗。
    請注意,如果您使用的是映射到 TCP/IP 地址的服務(wù)器別名,則可能會(huì)出現(xiàn)此錯(cuò)誤。
    如果安裝了 MDAC 2.5 或 2.1,則不會(huì)出現(xiàn)此問題。
    原因:
    SQL Server 網(wǎng)絡(luò)庫的 Dbnetlib.dll 的 MDAC 2.6 版本嘗試使用反向搜索來確定 IP 地址的主機(jī)名。如果客戶端計(jì)算機(jī)具有較慢的域名服務(wù) (DNS) 服務(wù)器或者沒有 DNS 服務(wù)器,并且計(jì)算機(jī)上的本地 HOSTS 或 LMHOSTS 文件不包含 SQL Server 的 IP 地址的主機(jī)名,則反向搜索將在五秒鐘后超時(shí)。
    請注意,這只是 SQL Server 驅(qū)動(dòng)程序代碼內(nèi)部的超時(shí),它可能會(huì)在客戶端應(yīng)用程序中生成超時(shí)錯(cuò)誤,也可能不會(huì)。連接嘗試可能會(huì)成功,但應(yīng)用程序所建立的每一個(gè)新連接將出現(xiàn)相同的五秒鐘延遲。
    解決方案:
    若要解決此問題,請獲取最新的 Microsoft SQL Server 2000 Service Pack。有關(guān)其他信息,請單擊下面的文章編號(hào),以查看 Microsoft 知識(shí)庫中相應(yīng)的文章:
    如何獲取最新的 SQL Server 2000 Service Pack :(http://support.microsoft.com/kb/290211/):
    要解決此問題,請獲取最新的 Microsoft Data Access Components 2.6 Service Pack。有關(guān)其他信息,請單擊下面的文章編號(hào),以查看 Microsoft 知識(shí)庫中相應(yīng)的文章:
    如何獲取最新的 MDAC 2.6 Service Pack (http://support.microsoft.com/kb/300635/)
    修復(fù)程序:
    注意:以下修復(fù)程序是在 SQL Server 2000 Service Pack 2 之前創(chuàng)建的。
    該修復(fù)程序的英文版應(yīng)具有以下或更新的文件屬性:
    日期     版本    大小  文件名    
    平臺(tái) -----19-JUN-2001 
    2000.080.0304.00 86,082 Dbnetlib.dll   x86
    替代方法:
    若要解決此問題,請?zhí)峁┮恍┛煽康姆椒▉韴?zhí)行 SQL Server 服務(wù)器 IP 地址的反向搜索,使用 SQL Server 計(jì)算機(jī)名(而不是 IP 地址),或者應(yīng)用此修復(fù)程序。
    若要使用 HOSTS 文件或 LMHOSTS,請將 SQL Server 服務(wù)器的 TCP/IP 地址放在行的開頭,后面接幾個(gè)空格,然后是 SQL Server 服務(wù)器的計(jì)算機(jī)名。例如:123.123.123.123 myservername
    對(duì)于運(yùn)行 Microsoft Windows NT 和 Microsoft Windows 2000 的客戶機(jī),HOSTS 或 LMHOSTS 文件位于 System32DriversEtc 目錄;對(duì)于運(yùn)行 Microsoft Windows ME、Microsoft Windows 98 或 Microsoft Windows 95 的客戶機(jī),HOSTS 或 LMHOSTS 文件位于 Windows 目錄。