C# 在SQL Server中定义远程连接端口时出现问题

C# 在SQL Server中定义远程连接端口时出现问题,c#,sql-server,connection-string,C#,Sql Server,Connection String,我使用以下连接字符串在SQL Server中建立远程连接: "Data Source=" + _databaseIP + "," + _databasePort + ";Network Library=DBMSSOCN; Initial Catalog=SI_CONFIG; uid=sa;pwd=Password1!" 其中_databaseIP和_databasePort由用户输入 然而,尽管IP在远程机器上是固定的,但端口最终会改变。 为了发现服务器正在侦听的实际端口,我查找错误日志文件

我使用以下连接字符串在SQL Server中建立远程连接:

 "Data Source=" + _databaseIP + "," + _databasePort + ";Network
Library=DBMSSOCN; Initial Catalog=SI_CONFIG; uid=sa;pwd=Password1!"
其中_databaseIP和_databasePort由用户输入

然而,尽管IP在远程机器上是固定的,但端口最终会改变。 为了发现服务器正在侦听的实际端口,我查找错误日志文件('c:\Program Files\Microsoft SQL server\MSSQL10\U 50.SQLEXPRESS\MSSQL\Log\ERRORLOG'),并搜索“服务器正在侦听[”任何告诉我端口的“49167”行,但是,这似乎在几天或几周后随机更改


我想修复端口,或者使用另一种方式通过服务器进行连接,这样我就不再需要用户提供端口了。任何建议都将不胜感激。谢谢。

听起来您的SQL server已配置为使用。从链接:

数据库引擎和SQL Server Compact的命名实例包括 为动态端口配置。这意味着他们选择一个可用端口 当SQL Server服务启动时。当您连接到 通过防火墙命名实例,将数据库引擎配置为 侦听特定端口,以便打开相应的端口 在防火墙中


要将SQL实例配置为使用特定端口,请打开SQL Server配置管理器并导航到SQL Server网络配置->协议(实例名称)。右键单击TCP/IP,转到属性->IP地址选项卡,然后清除TCP动态端口的所有条目。为要在其上建立连接的每个IP地址设置TCP端口值。保存更改后,需要重新启动SQL。

听起来您的SQL Server配置为o从链接中使用a.:

数据库引擎和SQL Server Compact的命名实例包括 为动态端口配置。这意味着他们选择一个可用端口 当SQL Server服务启动时。当您连接到 通过防火墙命名实例,将数据库引擎配置为 侦听特定端口,以便打开相应的端口 在防火墙中

要将SQL实例配置为使用特定端口,请打开SQL Server配置管理器并导航到SQL Server网络配置->协议(实例名称)。右键单击TCP/IP,转到属性->IP地址选项卡,然后清除TCP动态端口的所有条目。为要使连接可用的每个IP地址设置TCP端口值。保存更改后,需要重新启动SQL。

请参见此:请参见此: