SQL Server連接失敗錯(cuò)誤及解決第1/5頁(yè)
更新時(shí)間:2007年01月08日 00:00:00 作者:
在使用 SQL Server 的過(guò)程中,用戶遇到的最多的問(wèn)題莫過(guò)于連接失敗了。一般而言,有以下兩種連接 SQL Server 的方式,一是利用 SQL Server 自帶的客戶端工具,如企業(yè)管理器、查詢分析器、事務(wù)探查器等;二是利用用戶自己開(kāi)發(fā)的客戶端程序,如ASP 腳本、VB程序等,客戶端程序中又是利用 ODBC 或者 OLE DB 等連接 SQL Server。下面,我們將就這兩種連接方式,具體談?wù)勅绾蝸?lái)解決連接失敗的問(wèn)題。
一、客戶端工具連接失敗
在使用 SQL Server 自帶的客戶端工具(以企業(yè)管理器為例)連接 SQL Server時(shí),最常見(jiàn)的錯(cuò)誤有如下一些:
1、SQL Server 不存在或訪問(wèn)被拒絕
ConnectionOpen (Connect())

2、用戶'sa'登錄失敗。原因:未與信任 SQL Server 連接相關(guān)聯(lián)。

3、超時(shí)已過(guò)期。

下面我們依次介紹如何來(lái)解決這三個(gè)最常見(jiàn)的連接錯(cuò)誤。
第一個(gè)錯(cuò)誤"SQL Server 不存在或訪問(wèn)被拒絕"通常是最復(fù)雜的,錯(cuò)誤發(fā)生的原因比較多,需要檢查的方面也比較多。一般說(shuō)來(lái),有以下幾種可能性:
1、SQL Server名稱或IP地址拼寫有誤;
2、服務(wù)器端網(wǎng)絡(luò)配置有誤;
3、客戶端網(wǎng)絡(luò)配置有誤。
要解決這個(gè)問(wèn)題,我們一般要遵循以下的步驟來(lái)一步步找出導(dǎo)致錯(cuò)誤的原因。
首先,檢查網(wǎng)絡(luò)物理連接:
ping <服務(wù)器IP地址>
或者
ping <服務(wù)器名稱>
如果 ping <服務(wù)器IP地址> 失敗,說(shuō)明物理連接有問(wèn)題,這時(shí)候要檢查硬件設(shè)備,如網(wǎng)卡、HUB、路由器等。還有一種可能是由于客戶端和服務(wù)器之間安裝有防火墻軟件造成的,比如 ISA Server。防火墻軟件可能會(huì)屏蔽對(duì) ping、telnet 等的響應(yīng),因此在檢查連接問(wèn)題的時(shí)候,我們要先把防火墻軟件暫時(shí)關(guān)閉,或者打開(kāi)所有被封閉的端口。
如果ping <服務(wù)器IP地址> 成功而 ping <服務(wù)器名稱> 失敗,則說(shuō)明名字解析有問(wèn)題,這時(shí)候要檢查 DNS 服務(wù)是否正常。有時(shí)候客戶端和服務(wù)器不在同一個(gè)局域網(wǎng)里面,這時(shí)候很可能無(wú)法直接使用服務(wù)器名稱來(lái)標(biāo)識(shí)該服務(wù)器,這時(shí)候我們可以使用HOSTS文件來(lái)進(jìn)行名字解析,具體的方法是:
1、使用記事本打開(kāi)HOSTS文件(一般情況下位于C:\WINNT\system32\drivers\etc).
2、添加一條IP地址與服務(wù)器名稱的對(duì)應(yīng)記錄,如:
172.168.10.24 myserver
也可以在 SQL Server 的客戶端網(wǎng)絡(luò)實(shí)用工具里面進(jìn)行配置,后面會(huì)有詳細(xì)說(shuō)明。
其次,使用 telnet 命令檢查SQL Server服務(wù)器工作狀態(tài):
telnet <服務(wù)器IP地址> 1433
如果命令執(zhí)行成功,可以看到屏幕一閃之后光標(biāo)在左上角不停閃動(dòng),這說(shuō)明 SQL Server 服務(wù)器工作正常,并且正在監(jiān)聽(tīng)1433端口的 TCP/IP 連接;如果命令返回"無(wú)法打開(kāi)連接"的錯(cuò)誤信息,則說(shuō)明服務(wù)器端沒(méi)有啟動(dòng) SQL Server 服務(wù),也可能服務(wù)器端沒(méi)啟用 TCP/IP 協(xié)議,或者服務(wù)器端沒(méi)有在 SQL Server 默認(rèn)的端口1433上監(jiān)聽(tīng)。
一、客戶端工具連接失敗
在使用 SQL Server 自帶的客戶端工具(以企業(yè)管理器為例)連接 SQL Server時(shí),最常見(jiàn)的錯(cuò)誤有如下一些:
1、SQL Server 不存在或訪問(wèn)被拒絕
ConnectionOpen (Connect())

2、用戶'sa'登錄失敗。原因:未與信任 SQL Server 連接相關(guān)聯(lián)。

3、超時(shí)已過(guò)期。

下面我們依次介紹如何來(lái)解決這三個(gè)最常見(jiàn)的連接錯(cuò)誤。
第一個(gè)錯(cuò)誤"SQL Server 不存在或訪問(wèn)被拒絕"通常是最復(fù)雜的,錯(cuò)誤發(fā)生的原因比較多,需要檢查的方面也比較多。一般說(shuō)來(lái),有以下幾種可能性:
1、SQL Server名稱或IP地址拼寫有誤;
2、服務(wù)器端網(wǎng)絡(luò)配置有誤;
3、客戶端網(wǎng)絡(luò)配置有誤。
要解決這個(gè)問(wèn)題,我們一般要遵循以下的步驟來(lái)一步步找出導(dǎo)致錯(cuò)誤的原因。
首先,檢查網(wǎng)絡(luò)物理連接:
ping <服務(wù)器IP地址>
或者
ping <服務(wù)器名稱>
如果 ping <服務(wù)器IP地址> 失敗,說(shuō)明物理連接有問(wèn)題,這時(shí)候要檢查硬件設(shè)備,如網(wǎng)卡、HUB、路由器等。還有一種可能是由于客戶端和服務(wù)器之間安裝有防火墻軟件造成的,比如 ISA Server。防火墻軟件可能會(huì)屏蔽對(duì) ping、telnet 等的響應(yīng),因此在檢查連接問(wèn)題的時(shí)候,我們要先把防火墻軟件暫時(shí)關(guān)閉,或者打開(kāi)所有被封閉的端口。
如果ping <服務(wù)器IP地址> 成功而 ping <服務(wù)器名稱> 失敗,則說(shuō)明名字解析有問(wèn)題,這時(shí)候要檢查 DNS 服務(wù)是否正常。有時(shí)候客戶端和服務(wù)器不在同一個(gè)局域網(wǎng)里面,這時(shí)候很可能無(wú)法直接使用服務(wù)器名稱來(lái)標(biāo)識(shí)該服務(wù)器,這時(shí)候我們可以使用HOSTS文件來(lái)進(jìn)行名字解析,具體的方法是:
1、使用記事本打開(kāi)HOSTS文件(一般情況下位于C:\WINNT\system32\drivers\etc).
2、添加一條IP地址與服務(wù)器名稱的對(duì)應(yīng)記錄,如:
172.168.10.24 myserver
也可以在 SQL Server 的客戶端網(wǎng)絡(luò)實(shí)用工具里面進(jìn)行配置,后面會(huì)有詳細(xì)說(shuō)明。
其次,使用 telnet 命令檢查SQL Server服務(wù)器工作狀態(tài):
telnet <服務(wù)器IP地址> 1433
如果命令執(zhí)行成功,可以看到屏幕一閃之后光標(biāo)在左上角不停閃動(dòng),這說(shuō)明 SQL Server 服務(wù)器工作正常,并且正在監(jiān)聽(tīng)1433端口的 TCP/IP 連接;如果命令返回"無(wú)法打開(kāi)連接"的錯(cuò)誤信息,則說(shuō)明服務(wù)器端沒(méi)有啟動(dòng) SQL Server 服務(wù),也可能服務(wù)器端沒(méi)啟用 TCP/IP 協(xié)議,或者服務(wù)器端沒(méi)有在 SQL Server 默認(rèn)的端口1433上監(jiān)聽(tīng)。
相關(guān)文章
IN&EXISTS與NOT IN&NOT EXISTS 的優(yōu)化原則小結(jié)
下面只是從理論上提出了一些建議,最好的原則是大家在上面的基礎(chǔ)上,能夠使用執(zhí)行計(jì)劃來(lái)分析,得出最佳的語(yǔ)句的寫法。2010-06-06
Linux安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)的步驟
這篇文章主要介紹了Linux安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)?,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04
解決sql server 數(shù)據(jù)庫(kù),sa用戶被鎖定的問(wèn)題
這篇文章主要介紹了解決sql server 數(shù)據(jù)庫(kù),sa用戶被鎖定的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06
SQL SERVER 查詢正在實(shí)行的SQL語(yǔ)句
SQL SERVER 查詢正在實(shí)行的SQL語(yǔ)句的實(shí)現(xiàn)代碼2009-06-06
SQL Server 定時(shí)訪問(wèn)url激活數(shù)據(jù)同步示例
這篇文章主要介紹的是SQL Server 定時(shí)訪問(wèn)url激活數(shù)據(jù)同步的具體實(shí)現(xiàn),需要的朋友可以參考下2014-05-05

