詳解數據庫安裝時SQL Server動態端口問題
SQL Server動態端口問題在安裝SQL2000和SQL2005安裝過程中經常會遇到,下面就將對SQL Server動態端口問題作詳盡的闡述,供您參考。
1,因為SQL2000安裝過程中無法修改實例名稱,故安裝過程中必須先安裝SQL2000,然后在安裝SQL2005.安裝SQL2005時必須修改SQL實例名稱,否則將和SQL2000的實例名稱沖突. (關于此點,本人并不認同。若是先安裝sql2005,則在安裝sql2000的過程中自會提示你要修改實例名稱。)
2,安裝完SQL2005后,開始準備用SQL2000客戶端工具連接SQL2005,結果報告不能用SQL2000客戶端工具連接,只能用SQL2005客戶端工具連接,后證明SQL2005客戶端工具可以同時連接SQL2000和SQL2005。
3,服務器上安裝完成后,準備用遠程連接SQL服務器試試,結果始終連接不上SQL2005,只能連接上SQL2000.原來SQL2000服務器用的端口始終是1433端口,而SQL2005使用的是動態端口.那如果用程序連接SQL20005服務器的時候,程序如何知道SQL2005服務器用的是什么端口呢?原來SQL2005提供了一個SQL BROWER服務,開啟這個服務后,就可以通過查詢SQL BROWER服務 就可以知道SQL2005現在正在使用哪個端口.因為項目需要,需要把這個SQL動態端口改成靜態的,修改過程如下: 運行SQL配置管理程序,找到SQL的實例名稱下面的協議,雙擊右邊的TCP/IP協議,在第二選項卡中IPALL里面輸入SQL運行的端口就可以了(注意不能同時填寫動態端口和靜態端口,否則SQL下次將無法啟動),修改完成后重新啟動SQL服務即可生效。
4,修改端口后在連接發現仍然不能連接,原來還需要開啟SQL2005的遠程登陸服務。在Microsoft SQL Server 2005中默認的是不允許遠程登錄的,會出現【provider: SQL 網絡接口, error: 26 - 定位指定的服務器/實例時出錯】的錯誤,下面的方法可以打開:配置工具->sql server外圍應用配置器->服務和連接的外圍應用配置器->打開MSSQLSERVER節點下的Database Engine 節點,先擇"遠程連接",接下建議選擇"同時使用TCP/IP和named pipes",確定后,重啟數據庫服務就可以。
5,遠程登陸服務和端口都修改之后連接應該沒有問題了吧,結果遠程連接SQL2000的時候發現沒有問題,但是連接SQL20005依然不行,在SQL2005的客戶端連接工具里面需要輸入你要連接的SQL服務,SQL2000的直接輸入服務器的IP地址即可,那如何輸入才能讓客戶端工具連接到SQL2005的服務呢?既然SQL2005修改了端口,那按照常規的錄入格式應該是輸入:IP地址+冒號+端口號應該就可以了。結果試了一下發現依然不行.后又修改了客戶端的連接的默認端口,結果仍然不行。原來按照常規的格式錄入是錯誤的,需要改成:IP地址+逗號+端口號才行.現在一試果然可以。然后在試著通過。NET程序訪問看能否連接,結果都可以。
不采用以上附加的方法的時候,就在服務器的2000升級到SP4就可以。這個已經驗證了。如果不對,請檢查用戶名和密碼是否正確。
【編輯推薦】


















