我在使用公共IP,命名实例和端口号(1433除外)连接到远程SQL服务器的c#中创建连接字符串时遇到了困难。有谁知道怎么做?
答案 0 :(得分:20)
试试这个,用您想要使用的端口号替换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;
答案 1 :(得分:4)
使用服务器名tcp:<public IP>,<port>
,如SqlConnection.ConnectionString中所述:
的名称或网络地址 SQL Server的实例 连接。端口号可以是 在服务器名称后指定:
server=tcp:servername, portnumber
指定本地实例时 总是使用(本地)。强迫一个 协议,添加以下之一 前缀:
np:(local)
,tcp:(local)
,lpc:(local)
数据源必须使用TCP格式或 命名管道格式。
TCP格式如下:
tcp:<host name>\<instance name>
tcp:<host name>,<TCP/IP port number>
如果使用tcp:<host name>\<isntance name>
需要SQL浏览器服务连接(端口1433),因此最好使用后面的格式,并使用显式端口名称:
Data Source=tcp:1.2.3.4,1234;User Id=...; Password=...
答案 2 :(得分:1)
This site has never failed me.
我会在这里说明显而易见的事情,但在互联网上公开您的SQL服务器通常是一个坏主意..(除非您使用的是VPN)
答案 3 :(得分:0)
connectionString="Database=pub;Server=192.168.1.1\INSTANCE,1746;Trusted_Connection=yes;"
或者您可以使用username/password
代替可信连接。