某企業(yè)正常使用的一套C/S模式進(jìn)銷(xiāo)存系統,新增加的一臺客戶(hù)機在連接數據庫服務(wù)器(安裝SQL Server 2000)時(shí)出現故障提示—“[DBNETLIB][ConnectionOpen(connect()).]SQL Server 不存在或拒絕訪(fǎng)問(wèn)”,系統無(wú)法登錄,其它的客戶(hù)機工作正常。
2 解決過(guò)程及思路
對于這種故障提示,一般資料上對此故障介紹的解決辦法是檢查客戶(hù)機上防火墻和1433端口的設置。出現故障的客戶(hù)機上安裝的是卡巴斯基6.0互聯(lián)網(wǎng)安全套裝,在卡巴斯基的“網(wǎng)絡(luò )設置”中添加1433端口后,出現的故障提示變?yōu)?#8220;一般性網(wǎng)絡(luò )錯誤 (recv())”,造成后面這種故障提示信息的原因很多,不易確定。為此,比較正常工作的客戶(hù)機和出現故障的客戶(hù)機的SQL SERVER客戶(hù)端設置,發(fā)現工作正常的客戶(hù)機使用“Named pipes”為優(yōu)先使用的協(xié)議,使用服務(wù)器的名稱(chēng)來(lái)連接數據庫服務(wù)器,出現故障的客戶(hù)機使用“tcp/ip”為優(yōu)先啟用的協(xié)議,使用服務(wù)器的IP地址來(lái)連接數據庫服務(wù)器,默認端口為1433,在出現故障的客戶(hù)機上把 “Named pipes”設置為優(yōu)先啟用的協(xié)議,使用服務(wù)器的名稱(chēng)來(lái)連接數據庫服務(wù)器則連接正常,可以正常運行。由此確定故障與TCP/IP協(xié)議有關(guān),在服務(wù)器(Windows 2000 SERVER SP4+SQL Server 2000,IP地址為10.140.90.249)上運行netstat –an命令,結果如下:
| 以下為引用的內容: Active Connections Proto Local Address Foreign Address State …… TCP 10.140.90.249:80 10.140.90.52:2519 TIME_WAIT TCP 10.140.90.249:80 10.140.90.52:2523 TIME_WAIT TCP 10.140.90.249:80 10.140.90.52:2525 TIME_WAIT TCP 10.140.90.249:80 10.140.90.52:2527 TIME_WAIT TCP 10.140.90.249:80 10.140.90.52:2529 ESTABLISHED TCP 10.140.90.249:80 10.140.90.52:2531 ESTABLISHED TCP 10.140.90.249:139 0.0.0.0:0 LISTENING TCP 10.140.90.249:1051 10.140.90.249:2161 ESTABLISHED TCP 10.140.90.249:2161 10.140.90.249:1051 ESTABLISHED …… |
SELECT @@VERSION
返回值為“8.00.194 RTM”,該值為SQL Server 2000的原始版本,進(jìn)一步詢(xún)問(wèn)管理員,得知在安裝SP4時(shí)沒(méi)有停止服務(wù)器上的SQL Server服務(wù),而SQL Server 2000 SP4明確要求安裝時(shí)要停止服務(wù)器上的SQL Server服務(wù)和所有客戶(hù)端程序后才能安裝,由此判斷服務(wù)器上的SQL Server 2000 SP4沒(méi)有安裝成功。SQL Server 2000版本和版本號關(guān)系可以在網(wǎng)上查到。
重新在服務(wù)器上安裝SQL Server 2000 SP4,出現提示“以前進(jìn)行的程序安裝創(chuàng )建了掛起的文件操作。運行程序之前,必須重新啟動(dòng)計算機。”表明以前的SP4沒(méi)有安裝成功,重新啟動(dòng)服務(wù)器,這個(gè)提示繼續出現,啟動(dòng)注冊表編輯器,來(lái)到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager分支,刪除PendingFileRenameOperations項目,然后重新安裝SQL Server 2000 SP4成功。再在服務(wù)器上執行netstat –an命令,1433端口赫然在列,處于“LISTENING”狀態(tài),把出現故障的客戶(hù)機設置為T(mén)CP/IP連接方式,啟動(dòng)程序,連接順利完成,錯誤信息不再出現。
3 結束語(yǔ)
現在的軟件系統越來(lái)越復雜,牽扯的系統也越來(lái)越多,排除故障時(shí)不能被故障的表面現象所迷惑,要順藤摸瓜,逐步分析排除,到有關(guān)軟件系統的論壇和官方網(wǎng)站了解相關(guān)產(chǎn)品的信息,尤其是補丁信息,在排除故障時(shí)才能事半功倍,少走彎路。
這種故障在單機狀態(tài)時(shí)也會(huì )出現,一般是SQL SERVER的客戶(hù)端TCP/IP設置為優(yōu)先啟用的協(xié)議,使用IP地址連接SQL SERVER,網(wǎng)線(xiàn)物理連接有問(wèn)題或者IP地址設置有問(wèn)題時(shí)。
聯(lián)系客服