需求如下:需要遠程連接外地的SQL Server 2000服務器。
測試條件:一個公網IP,兩個靜態IP。
具體步驟:
一、ping服務器IP能否ping通
觀察遠程SQL Server 2000服務器的物理連接是否存在。如果不行,請檢查網絡,查看配置,當然得確保遠程sql server 2000服務器的IP拼寫正確。
二、在Dos或命令行下輸入telnet 服務器IP 端口,看能否連通
如telnet 202.114.100.100 1433
通常端口值是1433,因為1433是SQL 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 測試,將會看到屏幕一閃之後光標在左上角不停閃動。恭喜你,你馬上可以開始在企業管理器或查詢分析器連接了。