【问题标题】:SQL Server on remote computer远程计算机上的 SQL Server
【发布时间】:2016-12-26 21:29:22
【问题描述】:

我在家庭网络上的 IP 为 192.168.66 的计算机上有一个 SQL Server Express 实例。

我已在端口 49170 上启用 TCP/IP,并在 Windows 防火墙上添加了传入规则。

我有一个应用程序,我想在我的网络中的不同计算机上安装它。当我在 Visual Studio 中测试我的应用程序时,我无法连接到远程计算机上的实例。

<connectionStrings>
    <add name="EquipamentoDal.Properties.Settings.ExtinguisherMngConnectionString"
         connectionString="Data Source=192.168.1.66,49170;Initial Catalog=ExtinguisherMng;Integrated Security=True"
         providerName="System.Data.SqlClient" />
 </connectionStrings>

服务器名称是DESKTOP-HU51203\EXPRESS。 我做错了什么无法连接?

【问题讨论】:

  • 有什么异常?你能从远程PC ping ip 地址吗?
  • 你使用的是Integrate security=true,这台电脑的用户权限够吗?你冒充了某个用户吗?
  • 集成安全性可能不适用于家庭网络。
  • 我能ping通电脑是的。
  • SQL Server Express 默认情况下 NOT 是否允许远程连接 - 您是否在 SQL Server Express 机器上明确启用了这些远程连接??跨度>

标签: c# sql-server sql-server-express


【解决方案1】:

您的连接字符串没有指定您要连接的命名实例,它只指定 IP 地址,这意味着任何客户端都将连接到默认实例而不是命名实例。

默认情况下,SQL Server Express 的配置与 SQL Server 的“标准”版本(标准版、工作组版、开发者版和企业版)不同,如下所示:

  • 阻止传入的远程连接 - 这必须在 SQL Server 配置管理器中明确启用
  • 使用名为SQLEXPRESS命名实例,而不是配置为默认实例
  • SQL Server Express 在支持 AttachDbLocalDb 方面也是独一无二的 - 其他 SKU/版本不支持 AttachDbLocalDb 功能。

在您的情况下,您已经启用了远程连接并且您没有使用 AttachDbLocalDb,因此您只需配置您的客户端以连接到命名实例:

您在连接字符串中使用&lt;host&gt;\&lt;instance name&gt;,&lt;port&gt; 格式在Data Source=Server= 参数中指定命名实例,例如Data Source=foo\SQLEXPRESS,1433,或者在您的特定情况下:

Data Source=192.168.1.66\SQLEXPRESS,49170;Initial Catalog=ExtinguisherMng;Integrated Security=True

您提到您在家庭网络上执行此操作,这意味着您不太可能使用 Active Directory 或 Kerberos,并且鉴于 SQL Server Express 不会公开其用于其服务标识的密码(用户也不能通过网络以NT AUTHORITY\NetworkService 身份验证这意味着您不能使用Integrated Security=True(或Integrated Security=SSPI,这是等效的,但SSPI 是首选值),您需要在您的连接字符串。

  1. 在服务器中创建一个新的登录对象(您需要先以某种方式登录到服务器,无论是本地还是远程使用sa 帐户(如果存在))
  2. 通过将Integrated Security=True 替换为User Id=&lt;userName&gt;;Password=&lt;password&gt;; 来指定新登录的凭据

【讨论】:

  • 我之前已经尝试过 192.168.1.66\SQLEXPRESS,49170 并且遇到了同样的问题
  • @RolandoAzevedo 您收到的确切错误消息是什么?
  • 服务器未找到或无法访问,,....可能未配置为允许远程连接。
猜你喜欢
  • 1970-01-01
  • 2013-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-27
  • 1970-01-01
相关资源
最近更新 更多