2010-03-06 14 views
0

監聽端口,我使用下面的命令的SQL Server Express 2005將TCP使用命令工具

SECURITYMODE=SQL DISABLENETWORKPROTOCOLS=0 SAPWD="****" ADDLOCAL=SQL_Engine,SQL_Data_Files,SQL_Replication,Client_Components,Connectivity,SDK 

我需要知道的是有一個參數或命令行工具來配置使靜默安裝SQL Server Express的2005該服務偵聽端口7005(見圖片)

http://www.databasejournal.com/img/2007/01/mak_CLT_image002.jpg

  • 我也需要創建一個別名使用命令行

感謝

+0

如果這是一個桌面應用程序,你應該考慮一個桌面(進程),如SQL Server精簡版,sqlite的,甚至訪問,而不是像SQL Server Express的服務器引擎引擎。除了爲用戶提供更好的服務之外,它還將使您的部署更加輕鬆。 – 2010-03-06 02:40:00

+0

我知道所有這些,但不幸的是我沒有選擇 所以有我可以使用的命令行或註冊表鍵來做到這一點? 謝謝 – Wel 2010-03-06 14:26:42

回答

1

我目前正試圖與這個爛攤子,這裏就是我發現:

  1. 爲了使TCP上的SQL Server聽可言,你需要把它配置到這樣做。您可以使用sac.exe從文件加載配置。轉到配置了啓用了TCP/IP的工作SQL服務器(以及其他任何地方)並運行「sac.exe out settings.txt」。現在,在希望啓用tcp的計算機上,運行「settings.txt中的sac.exe」,然後重新啓動該服務。 sac.exe位於「%programfiles%\ Microsoft SQL Server \ 90 \ Shared」目錄中

  2. 要配置到特定的端口,您必須編輯註冊表值。這將向您顯示編輯http://support.microsoft.com/kb/823938的密鑰,但要編寫腳本,您需要在.bat文件中使用「REG ADD」命令,併爲適當的密鑰賦予適當的值。對我來說,這是HKLM \ Microsoft SQL Server的\ MSSQL.1 \的MSSQLServer \ SuperSocketNetLib \的Tcp \ IPAll \ TCPPORT並將其設置的端口號(默認爲SQL是1433),然後設置HKLM \ Microsoft SQL Server的\ MSSQL.1 \ MSSQLServer \ SuperSocketNetLib \ Tcp \ IPAll \ TcpDynamicPorts爲空。

  3. 重新啓動SQL Server代理(net停止的 「SQL Server(SQLEXPRESS)」 我的機器上網絡啓動的 「SQL Server(SQLEXPRESS)」)

希望這有助於你或其他人搜索這個信息(比如我)

0

我知道這是不是一個合適的解決方案更多的是解決辦法,但不是指定(然後從您的應用程序連接到)一定的TCP端口,則可以選中在靜音的SQL Browser服務安裝SQL Server。這將使您的應用根據實例名稱連接到您感興趣的實例,而不是TCP端口。

創建新連接可能會損害性能,因爲客戶端需要額外的網絡往返才能獲取實例的端口,但(a)具有長連接的客戶端 - 服務器應用程序(b)對於具有連接池的應用程序服務器應用程序,配置良好的池不會受到太多影響(我認爲),或者可能需要稍多一點的連接才能實現相同的性能。

另外一個好處是,你可以在同一臺主機上的多個SQL Server實例,而不是在乎端口。例如,在您的(和我的)無提示安裝場景中,您必須首先檢查您想要的端口是否被另一個實例使用。使用SQL瀏覽器在您的安裝中不需要這種邏輯。

相關問題