【问题标题】:ASP.NET Connection string error when using ip address使用 ip 地址时 ASP.NET 连接字符串错误
【发布时间】:2013-09-26 14:37:06
【问题描述】:

我正在尝试调试一个 ASP.NET 页面我试图连接到本地 SQLServer DB,当我使用的连接字符串具有本地计算机的名称时,它可以正常工作,如下所示

string ConnectionString = "Integrated Security=SSPI;" +
                                  "Initial Catalog=ARTICLEDB;" + 
                                  "Data Source=MYMACHINENAME\\MYSQLSVR;";

...稍后...

        conn = new SqlConnection(ConnectionString);
        // Open the connection
        try
        {
            if (conn.State != ConnectionState.Open)
            {
                conn.Open(); 
                //don't work here when using ##.##.##.##\MYSQLSVR as datasource
            }

            return true;
        }
        catch
        {
            return false;
        }

当我使用 IP 机器作为 datadource 的值时,例如:###.###.###.###\\\MYSQLSVR 我得到一个异常说:

发生网络相关或特定于实例的错误,同时 建立与 SQL Server 的连接。找不到服务器或 无法访问。验证实例名称是否正确,并且 SQL Server 配置为允许远程连接。 (提供者:SQL 网络接口,错误:28 - 服务器不支持请求 协议)

此问题源于尝试从 IIS 运行站点并在未打开连接时遇到类似错误。

如何在连接字符串中引用 DB 以便 IIS 可以找到 DB?

我也尝试在 IIS 中为该站点添加连接字符串,但不确定如何从我的项目/站点中引用该 IIS 连接字符串

【问题讨论】:

  • 您的端口可能被阻止。检查您的防火墙设置。试试Data Source=localhost
  • 您是否在混合模式下配置 SQL Server 身份验证?

标签: c# asp.net sql-server iis connection-string


【解决方案1】:

转到 SQL Server 配置管理器并打开“命名管道”和“TCP/IP”

您的连接字符串应如下所示

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

http://www.connectionstrings.com/sql-server-2008

【讨论】:

  • 在哪里可以查看默认端口 1443 没有更改?我仍然无法连接,现在我认为我的防火墙可能存在问题
  • 检查Link1Link2
【解决方案2】:

检查以下是否对我有用。

Data Source=190.190.200.100,1433;Initial Catalog=DBName;Integrated Security=False;user id=userid;password=password

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-05
    • 2014-06-07
    • 1970-01-01
    • 2018-05-08
    相关资源
    最近更新 更多