sqlserver 2000 連接不上

使用JDBC連接SQL Server 2000 連不上的問題的分析與解決 及安裝SP4補丁
2009-04-29 18:09

小技巧:查看端口。可在cmd裏輸入netstat -an 命令!
,用MyEclipse連接SQL Server2000就是配置出錯!錯誤爲Error establishing socket錯誤!
  首先,需要下載SQL_Serve20000的sp3補丁,下載安裝後會發現1433端口已經打開了,再執行程序。但我沒有下載SQL_Serve20000的sp3補丁,而是下載了SQL_Serve20000的sp4補丁,順便再下載了SQL Server 2000 Driver for JDBC Service Pack 3 http://download.microsoft.com/download/4/1/d/41d3e9c0-64d1-451e-947b-7a4cba273b2d/setup.exe ,在下載先安裝SQL Server 2000 Driver for JDBC Service Pack 3,再安裝SQL_Serve20000的sp4補丁!就OK啦!
原因是與socket建立連接錯誤
可能是沒啓動SQL Server2000服務器
你要連接的數據庫的服務器沒有啓動

或者是需要SQL Server2000升級包,可以肯定出現這個錯誤很大概率是沒有安裝SQL Server升級包

由於微軟公司關於一個安全性問題的考慮,讓個人版的sql server 不監聽1433端口.故在通過驅動連接數據庫的時候會出現該Error establishing socket錯誤,所以如果通過jdbc連接sql server 就必須給數據庫打補丁,補丁包下下來是exe文件,執行它,隨便選個文件夾運行,然後再打開該文件夾,執行裏面的setup.bat,這樣你的數據庫就打上了補丁了,並且1433端口就監聽了,然後你在執行你的連接文件,就可以了(第一次的exe是解壓,解壓完再執行setup.bat纔是安裝)
有的時候還會出現一個問題說是什麼sa用戶沒有建立可信任的連接,好象是這麼個意思我記得不是很清楚了,這是因爲你安裝數據庫的時候選用的是windows驗證,應該選用混合模式,你打開企業管理器,選操作,點屬性,在安全性中選擇sql server 和windows這個選項,點確定,然後重啓sqlserver和你的web服務器,在運行你的連接文件應該就可以了,
   就解決啦!
錯誤提示如標題所示。看來很可能是驅動程序出錯了導致連接不上數據庫,因此我檢查是否啓動數據庫服務器,服務器已經啓動,看來是我用的jdbc的驅動出錯了。驅動程序出錯總是一件很麻煩的事情。爲了保險起見我還是編寫了一個用jdbcodbc驅動的小程序來鏈接數據庫,結果是運行正常的。看來是jdbc for sql server2000出錯了。這時我想起實驗室的一位仁兄用我的機器在另外一個帳號下面又安裝了一個sql server2000的實例很可能那就是原因的所在,新裝的實例使我以前對sql server2000進行sp4的升級失效導致驅動程序也不能用(jdbc的驅動程序要求sql server2000版本要sp3以上)。於是我重新對sql server升級到sp4問題解決了。
下面是我在網上找到的一些相同現象的解決方法:問題現象雖然相同但是原因可能不同方法也各異。
MS SQL2000 (Error establishing socket)錯誤的解決辦法-SQL請選用混和安裝模式
作者:YuLimin
* Error: get DB connection error. Ex. msg: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
server java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
            at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
            at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
            at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
---------------------------------------------------------------
無法建立數據庫連接,
確定網絡沒有問題
SQL有開着,
把SQL打到SP3的補丁
   SQL Server2000 SP4要注意,解壓之後看到setup.bat這個文件,打開這個文件就開始安裝SP4補丁。記得安裝後,SQL 服務器是停止了,需要重新啓動!安裝之後,啓動SQL服務器,打開查詢分析器,輸入select @@version,按F5執行,如果出現Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)   May 3 2005 23:18:38   Copyright (c) 1988-2003 Microsoft Corporation Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 2)則說明SQL Server2000的補丁SP4安裝成功
驅動也要對應SP3的.
---------------------------------------------------------------
1、下載Microsoft SQL Server 2000 Service Pack 3a並安裝,SQL請選用混和安裝模式!!!
http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=zh-cn  
2、下載SQL Server 2000 Driver for JDBC Service Pack 3
http://www.microsoft.com/downloads/details.aspx?FamilyId=07287B11-0502-461A-B138-2AA54BFDC03A&displaylang=en
3、運行時關閉防火牆
我的操作系統是XP,前幾天升級到sp2,發現jdbc連接不了sqlserver,報錯不能連接,後來我下載了sqlserver sp3,安裝的時候總是提示sa密碼不正確,後來我登陸微軟網站,找到關於sqlserver sp3的幫助文檔,發現原來我電腦中的用戶環境變量沒有設置TEMP和TMP,設置後,update sqlserver sp3成功,然後jdbc連接也正常。
    希望這文章對一些同道中人有所幫助。
JDBC SQLSERVER"Error establishing socket"
jdbc配置語句爲: jdbc:microsoft:sqlserver://server_name:1433
如運行程序時出現 "Error establishing socket" 錯誤,則應進行如下調試:

1 檢查SQL SERVER 是否允許遠程訪問.具體步驟:
1)打開"企業管理器",打開控制檯根目錄>SQL Server 組>數據庫
2)在相應"數據庫"上單擊右鍵,選擇"屬性"
3)選擇"連接"選項卡,檢查"遠程服務器連接"下,RPC服務是否選擇.
2 使用telnet IP地址 1433,系統是否提示連接出錯,如系統提示出錯
檢查是否防火牆屏蔽了SQL SERVER 或 java IDE 的網絡訪問端口
如果是,關閉防火牆,重新啓動SQL SERVER和java IDE,進行測試,
如果系統仍提示上述錯誤,嘗試下列步驟
3 檢查SQL SERVER 端口號及是否啓用了TCP/IP協議,具體步驟:
1)打開"企業管理器",打開控制檯根目錄>SQL Server 組>數據庫
2)在相應"數據庫"上單擊右鍵,選擇"屬性"
3)選擇"常規"選項卡,點擊"網絡配置",如啓用的協議中無"TCP/IP協議"將其加入
4)選擇"TCP/IP協議",點擊"屬性",檢查其端口號是否爲1433
5)如端口號爲1433將其修改爲其它端口號,修改jdbc連接語句,將端口號同樣改爲新啓用的端口號,如jdbc:microsoft:sqlserver://server_name:1400(假設新端口號爲 1400)

以下的方法你每種的去試試:
#檢查一下sql server的connection有沒有full.
#如果是認證的問題.
可到sql enterprice manager->指定server->內容->安全性.
把驗證改爲 SQL server 及 windows.
#點選屬性檢查一下port是否正確.
#執行%MSSQL_HOME%80ToolsBinnSVRNETCN.exe
把TCP/IP啓用.
#關掉防火牆.

安裝SP4補丁:具體步驟:
1 下載個SP4補丁包,下載地址:
http://www.microsoft.com/downloads/details.aspx?FamilyID=8e2dfc8d-c20e-4446-99a9-b7f0213f8bc5&DisplayLang=zh-cn
文件名:SQL2000-KB884525-SP4-x86-CHS.EXE
2 將文件“SQL2000-KB884525-SP4-x86-CHS.EXE”安裝後,產生“SQL2KSP4”文件夾,相當於解壓這個補丁文件,雙擊“SQL2KSP4”文件夾裏的“setup.bat”文件,纔開始真正安裝SP4補丁文件。
注意:要先安裝MSSQL 2000數據庫,再安裝Sp4補丁文件。


 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章