【问题标题】:Remote DB connection string failed远程数据库连接字符串失败
【发布时间】:2016-01-15 06:18:51
【问题描述】:

我需要在另一个系统上连接数据库。虽然我尝试连接字符串为

SqlConnection con = new SqlConnection(@"Data Source=(192.168.0.125)\SQLEXPRESS,1433;Network Library=DBMSSOCN;Initial Catalog=db_Stock;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";

显示错误:

“发生网络相关或特定于实例的错误,同时 建立与 SQL Server 的连接。找不到服务器或 无法访问。验证实例名称是否正确,并且 SQL Server 配置为允许远程连接。 (提供者:TCP 提供者,错误:0 - 不知道这样的主机。)"

【问题讨论】:

  • 如果您要连接到远程 SQL Server Express 实例,您必须确保此实例明确允许远程连接 - 默认情况下是 OFF...
  • 将IP地址输入Data Source=192.168.0.125
  • 您是否启用了从 TCP/IP 到数据库的远程访问?

标签: c# sql-server-2008


【解决方案1】:

你不需要括号

Data Source=192.168.0.125\SQLEXPRESS,1433;Network Library=DBMSSOCN;Initial Catalog=db_Stock;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False

ConnectionStrings

【讨论】:

  • 删除了括号,但存在相同的问题{“建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。未找到或无法访问服务器。验证实例名称是正确的,并且 SQL Server 配置为允许远程连接。(提供者:TCP 提供者,错误:0 - 不知道这样的主机。)"}
  • 尝试在服务器上运行程序,是否连接??
【解决方案2】:

您需要为远程连接创建一个数据库用户,并将它们传递到您的 web.config 文件中。

您还需要设置 Integrated security=false。 根据 [微软][1]

false 时,在连接中指定用户 ID 和密码。如果为 true,则使用当前 Windows 帐户凭据进行身份验证。 识别值为true、false、yes、no、sspi(强烈推荐),相当于true。

示例: (192.168.0.125)\SQLEXPRESS,1433;Network Library=DBMSSOCN;Initial Catalog=db_Stock;Integrated Security=True;user id=sa;password=sa123;Connect Timeout=15 ;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"

【讨论】:

  • "您需要为远程连接创建一个数据库用户" - 请问?我敢打赌,与 SQL Server 实例的绝大多数远程连接都使用 Windows 登录(即远程连接是常态,并且 SQL Server 的默认设置不启用 SQL 登录)
【解决方案3】:

我按照以下网站和说明解决了这个问题

网站链接]site

【讨论】:

    猜你喜欢
    • 2017-03-20
    • 1970-01-01
    • 2017-03-08
    • 2016-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-02
    • 1970-01-01
    相关资源
    最近更新 更多