1、因為SQL2000安裝過程中無法修改實例名稱,故安裝過程中必須先安裝SQL2000,然後再安裝SQL2005。安裝SQL2005時必須修改SQL實例名稱,否則將和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現在正在使用哪個端口了。因為項目需要把這個SQL2005的動態端口改成靜態的,修改過程如下:
運行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地址+冒號+端口號”應該就可以了,結果試了一下發現依然不行。後來又修改了客戶端連接的默認端口,結果仍然不行。沒辦法了,只有到網上Google了一翻,結果終於在一篇英文文章中找到了連接的方法,原來按照常規的格式錄入是錯誤的,需要改成“IP地址+逗號+端口號”才行。