THE INFORMATION IN THIS ARTICLE APPLIES TO:
- EFT Server, version 6.0 and later
QUESTION
How does EFT Server know which TCP/IP port it should use to connect to SQL Server?
ANSWER
When the SQL Server browser service (installed with SQL Server) starts up, it searches the registry for any "named instances" of SQL Server and which TCP ports they're listening on. When a client wants to connect to a named instance, it asks the browser service (on UDP port 1434) on which TCP/IP port is that instance listening. This is how Microsoft implemented support for multiple instances of SQL Server on the same computer. The default instance listens on TCP port 1433. If you have a named instance, the TCP port is dynamically configured.
This is standard SQL Server functionality and doesn't require special port syntax in the EFT Server connection string or host name. It's all abstracted by the API used, which looks at the host string and figures out whether you're trying to connect to a named instance or a default instance (by determining whether host\instance or just host was specified).
The SQL Server TCP settings are stored in the following registry locations:
SQL 2005
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.<InstanceNumber>\MSSQLServer\SuperSocketNetLib\TCP\
SQL 2008
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<InstanceName>\MSSQLServer\SuperSocketNetLib\TCP\
For details of how to view/change the TCP information in the SQL Server Configuration Manager, refer to the following MSDN article:
http://msdn.microsoft.com/en-us/library/ms177440(SQL.90).aspx
Refer to the following Microsoft topics for more information: