【问题标题】:Error connecting local SQL via Powershell from vm从 vm 通过 Powershell 连接本地 SQL 时出错
【发布时间】:2014-11-30 12:05:13
【问题描述】:

一些见解,封闭的实验室环境,Windows Server 2012(主机)和内部虚拟交换机上的 2 个 VM 的 Windows 8.1(来宾)。主机设置为默认网关,ip 1,虚拟机对应 2 和 3。所有实体都可以在网络上看到对方,这意味着我可以通过文件共享 ping、tracert 或共享文件,而且我什至可以从每个实体调用命令到另一个地方。

问题是我在主机上安装了一个 SQL Server Express 实例 (SQLEXPRESS),但我无法使用以下代码在 Powershell 中从 vm 连接到它:

$sql_Server = "HOST\SQLEXPRESS"
$sql_User = "User"
$sql_Password = "Password"
$sql_Database = "Database"
$sql_Connection = New-Object System.Data.SqlClient.SqlConnection
$sql_Connection.ConnectionString = "Server=$sql_Server; Uid=$sql_User; Pwd=$sql_Password; Database=$sql_Database"
$sql_Connection.Open()

我得到的只是以下错误:

使用“0”参数调用“Open”的异常:“与网络相关的或 建立连接时发生特定于实例的错误 SQL 服务器。服务器未找到或无法访问。核实 实例名称正确且 SQL Server 配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定的实例)"

按照您的问题:

  • 防火墙如果全部关闭,
  • Tcp 端口 1433 已启用,
  • 以上代码可在主机上运行

我对网络知之甚少,所以我猜我在这个谜题中遗漏了一些东西

【问题讨论】:

  • SQL Server Express 默认不允许远程连接 - 必须明确允许
  • 这个帖子可能有帮助...stackoverflow.com/questions/11278114/…
  • @andyb 谢谢,这不是答案,但它让我明白了!我必须运行 sql 浏览器。

标签: sql-server powershell networking hyper-v


【解决方案1】:

我必须运行 SQL Browser 服务才能从 VM 查询服务器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多