遠程連接sql server 2000服務器的解決方案

由於特定需求,最近實驗室需要遠程連接外地的sql server 2000服務器
 ping 服務器IP能否ping通。
   
這個實際上是看和遠程sql server 2000服務器的物理連接是否存在。如果不行,請檢查網絡,查看配置,當然得確保遠程sql server 2000服務器的IP拼寫正確。
 Dos或命令行下輸入telnet 服務器IP 端口,看能否連通。
telnet 202.114.100.100 1433
通常端口值是1433,因爲1433sql server 2000的對於Tcp/IP的默認偵聽端口。如果有問題,通常這一步會出問題。通常的提示是“……無法打開連接,連接失敗"
如果這一步有問題,應該檢查以下選項。
   1 
檢查遠程服務器是否啓動了sql server 2000服務。如果沒有,則啓動。
   2 
檢查服務器端有沒啓用Tcp/IP協議,因爲遠程連接(通過因特網)需要靠這個協議。檢查方法是,在服務器上打開 開始菜單->程序->Microsoft SQL Server->服務器網絡實用工具,看啓用的協議裏是否有tcp/ip協議,如果沒有,則啓用它。
   3 
檢查服務器的tcp/ip端口是否配置爲1433端口。仍然在服務器網絡實用工具裏查看啓用協議裏面的tcp/ip的屬性,確保默認端口爲1433,並且隱藏服務器複選框沒有勾上。
     
事實上,如果默認端口被修改,也是可以的,但是在客戶端做telnet測試時,寫服務器端口號時必須與服務器配置的端口號保持一致。如果隱藏服務器複選框被勾選,則意味着客戶端無法通過枚舉服務器來看到這臺服務器,起到了保護的作用,但不影響連接,但是Tcp/ip協議的默認端口將被隱式修改爲2433,在客戶端連接時必須作相應的改變。
     4 
如果服務器端操作系統打過sp2補丁,則要對windows防火牆作一定的配置,要對它開放1433端口,通常在測試時可以直接關掉windows防火牆(其他的防火牆也關掉最好)。
  5 
檢查服務器是否在1433端口偵聽。如果服務器沒有在tcp連接的1433端口偵聽,則是連接不上的。檢查方法是在服務器的dos或命令行下面輸入 
 netstat -a -n 
或者是netstat -an,在結果列表裏看是否有類似 tcp   127.0.0.1 1433   listening 的項。如果沒有,則通常需要給sql server 2000打上至少sp3的補丁。其實在服務器端啓動查詢分析器,輸入 select @@version 執行後可以看到版本號,版本號在8.0.2039以下的都需要打補丁。
    
如果以上都沒問題,這時你再做telnet 服務器ip 1433 測試,將會看到屏幕一閃之後光標在左上角不停閃動。恭喜你,你馬上可以開始在企業管理器或查詢分析器連接了。
 檢查客戶端設置
    
程序->Microsoft SQL Server -> 客戶端網絡使用工具。像在服務器網絡實用工具裏一樣,確保客戶端tcp/ip協議啓用,並且默認端口爲1433(或其他端口,與服務器端保持一致就行)。
 在企業管理器裏或查詢那分析器連接測試
   
企業管理器->右鍵SQlserver->新建sqlserver註冊->下一步->寫入遠程IP->下一步->Sqlserver登陸->下一步->寫入登陸名與密碼(sa,password->下一步->下一步->完成
   
查詢分析器->文件->連接->寫入遠程IP->寫入登錄名和密碼(sa,password->確定
   
通常建議在查詢分析器裏做,因爲默認情況下,通過企業管理器註冊另外一臺SQL Server的超時設置是4秒,而查詢分析器是15秒。
   
修改默認連接超時的方法:
     
企業管理器->工具->選項->在彈出的"SQL Server企業管理器屬性"窗口中,點擊"高級"選項卡->連接設置-> 登錄超時(秒) 後面的框裏輸入一個較大的數字
     
查詢分析器->工具->選項->連接-> 登錄超時(秒) 後面的框裏輸入一個較大的數字
     
通常就可以連通了,如果提示錯誤,則進入下一步。
  錯誤產生的原因通常是由於SQL Server使用了" Windows"的身份驗證方式,因此用戶無法使用SQL Server的登錄帳戶(如 sa )進行連接。解決方法如下所示:
  
 在服務器端使用企業管理器,並且選擇"使用 Windows 身份驗證"連接上 SQL Server
  展開"SQL Server",鼠標右鍵點擊SQL Server服務器的名稱,選擇"屬性",再選擇"安全性"選項卡。
  "身份驗證"下,選擇"SQL Server Windows "
  重新啓動SQL Server服務。(在dos或命令行下面net stop mssqlserver停止服務,net start mssqlserver啓動服務,也是一種快捷的方法)。
附註:在連接本地服務器時,通常使用的是命名管道協議(在服務器網絡實用工具裏可以看到啓用的協議有這個),默認端口是445,因此在本地能連通是不能說明什麼問題的,連接遠程服務器是完全不同的協議)
再次連接,連接成功別忘了 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章