从桌面连接远程VM上的SQL Server失败,已做基础配置仍报错
解决SQL Server VM远程连接失败问题
已完成基础配置后的额外排查步骤
- 确认TCP/IP协议的监听端口配置
打开SQL Server配置管理器,依次进入SQL Server网络配置-> 对应实例的TCP/IP-> 右键选择属性-> 切换到IP地址标签。拉至底部的IPAll区域,检查:- 若使用固定端口,确保
TCP端口填写的是你防火墙开放的端口(默认1433),且TCP动态端口为空; - 若使用动态端口,需将显示的动态端口号加入防火墙规则,同时远程连接时要指定端口(格式:
VM_IP,端口号)。
- 若使用固定端口,确保
- 验证SQL Server服务的监听范围
打开命令提示符,执行命令:
确认输出结果中,sqlservr.exe对应的监听地址是netstat -ano | findstr "你的端口号"0.0.0.0(监听所有IP)或VM的公网/内网IP,而非仅127.0.0.1(仅本地监听)。 - 测试VM网络与端口连通性
在本地桌面执行:ping VM_IP,确认网络链路通畅;telnet VM_IP 你的端口号(或PowerShell命令Test-NetConnection VM_IP -Port 你的端口号),验证端口是否能正常访问。若不通,需检查VM的网络安全组(如Azure NSG、AWS安全组)是否开放对应端口,或VM的内网IP与你访问的地址是否匹配。
- 核对远程连接的实例名称
- 若为默认实例,远程连接直接填写
VM_IP; - 若为命名实例,需填写
VM_IP\实例名或VM_IP,端口号。可在VM上的SSMS执行SELECT @@SERVERNAME确认实例名称。
- 若为默认实例,远程连接直接填写
- 确认SQL Server允许远程连接的设置
在VM的SSMS中右键服务器 ->属性->连接,勾选“允许远程连接到此服务器”,之后重启SQL Server服务生效。 - 检查登录账号状态与权限
确认创建的SQL登录账号状态为“启用”,且至少拥有public角色权限;远程连接时需选择“SQL Server身份验证”,并输入正确的账号密码。
内容的提问来源于stack exchange,提问作者ikram zouaoui
相关产品推荐
相关产品推荐

