【发布时间】:2018-01-08 13:04:35
【问题描述】:
我有一个 Microsoft SQL Server,在 Window Server 2012 R2 Standard 中运行。此 SQL 实例的配置为: Servername: IP\SQLEXPRESS(这里的 IP 是 Window Server 的 IP 地址)带有 SQL 身份验证用户名和密码。
我想从我的本地机器连接到这个远程数据库,所以我在我的本地机器 Win 7 上安装了 sqlcmd,并尝试了连接到这个远程服务器的语法:sqlcmd -S IP\SQLEXPRESS -U username -P password,但后来我收到了一些错误消息:
Sqlcmd:错误:Microsoft ODBC Driver 13 for SQL Server:SQL Server 网络接口:查找指定的服务器/实例时出错 [xFFFFFFFF]。 .
Sqlcmd:错误:Microsoft ODBC Driver 13 for SQL Server:登录超时 过期了。
Sqlcmd:错误:Microsoft ODBC Driver 13 for SQL Server:A 发生网络相关或特定于立场的错误,而 建立与 SQL Server 的连接。未找到服务器 无障碍。检查实例名称是否正确以及 SQL Server 是否正确 配置为允许远程连接。有关详细信息,请参阅 SQL 服务器在线书籍..
我在网上搜索了一些解决方案,并为SQL Server做了一些配置,例如:在SQL Server中启用远程连接,激活TCP/IP协议,通过在远程服务器的Windows防火墙中定义新规则打开传入的TCP端口1433 ,在我的本地 Win 7 机器上打开传出 TCP 端口 1433。但在我的情况下,似乎有一些变化不起作用。谁能给我一些提示来解决这个远程连接问题?
提前感谢您!
【问题讨论】:
-
启用远程连接后是否重新启动了 SQL Server?确保 SQL Server Browser 服务正在运行以将实例名称解析为动态端口。 SQLEXPRESS 之类的命名实例可能会侦听不同的端口。使用此 PowerShell 命令检查低级端口连接:
powershell -Command echo ((new-object Net.Sockets.TcpClient).Client.Connect('yourserver', 1433)) "success" -
@DanGuzman 嗨丹,是的,我在启用远程连接后重新启动了 SQL Server,并且 SQL Server Browser 服务也在运行。只有我从本地计算机尝试了您的 PowerShell 命令检查,但没有成功。我收到错误消息,例如服务器没有响应、MethodInvocationException 和 SocketException。你对这个例外有什么想法吗?
-
这意味着客户端无法访问该端口,可能是因为服务器没有在监听或端口被阻塞。第一的。检查 SQL Server 错误日志以查看 SQL Server 正在侦听的接口和端口。
-
我确实检查了 SQL Server 错误日志文件,在这里我看到: SQL Server 网络接口库无法注册服务主体名称 (SPN) [ MSSQLSvc/VMPW-QA:SQLEXPRESS ] SQL Server 服务。 Windows 返回代码:0xffffffff,状态:63。SQL Server 网络接口库无法为 SQL Server 服务注册服务主体名称 (SPN) [MSSQLSvc/VMPW-QA:1433]。 Windows 返回码:0xffffffff,状态:63
-
您是否看到“正在侦听”消息,例如“SQL Server 正在侦听 ['any' ipv4 1433]”? SPN 消息与 IP 连接无关。
标签: sql-server remote-access remote-server sqlcmd