SQL连接公共IP,命名实例和端口号

我在c#中创建连接字符串时遇到了困难,该连接字符串将使用公共IP,命名实例和端口号(1433除外)连接到远程SQL服务器。 谁知道怎么做?

试试这个,用你想要使用的端口号替换666,用你想要的IP地址替换190.190.200.100,等等:

Data Source=190.190.200.100\MyInstance,666;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword; 

使用servername tcp:, ,如SqlConnection.ConnectionString中所述 :

要连接的SQL Server实例的名称或网络地址。 可以在服务器名称后指定端口号:

server=tcp:servername, portnumber

指定本地实例时,请始终使用(本地)。 要强制协议,请添加以下前缀之一:

np:(local)tcp:(local)lpc:(local)

数据源必须使用TCP格式或命名管道格式。

TCP格式如下:

  • tcp:\
  • tcp:,

如果使用tcp:\ ,则需要SQL Browser服务连接(端口1433),因此最好使用后面的格式,并使用显式端口名称:

 Data Source=tcp:1.2.3.4,1234;User Id=...; Password=... 

这个网站从未让我失望过。

我将在这里陈述显而易见的事情,但在互联网上公开您的SQL服务器通常是一个坏主意..(除非您使用VPN)

 connectionString="Database=pub;Server=192.168.1.1\INSTANCE,1746;Trusted_Connection=yes;" 

或者您可以使用username/password而不是可信连接。