You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SQLCMD执行数据库脚本时SQL Server连接失败求助

SQLCMD连接SQL Server失败的排查与解决方法

1. 修正实例名称与命令参数

  • 当前命令里的-S MachineName\DatabaseName格式错误:-S参数指定的是服务器/实例名,并非数据库名。数据库名需要用-d参数单独指定。
  • 正确命令格式示例:
    # 命名实例+指定目标数据库
    sqlcmd -S MachineName\InstanceName -d TargetDatabase -i "D:/sqlscript.sql"
    # 默认实例(实例名为MSSQLSERVER)可简化为机器名/IP
    sqlcmd -S MachineName -d TargetDatabase -i "D:/sqlscript.sql"
    
  • 若使用SQL Server身份验证,需追加-U 用户名 -P 密码参数;Windows身份验证默认无需额外参数。

2. 验证SQL Server实例状态

  • 打开services.msc服务管理器,找到对应SQL Server实例的服务(命名实例显示为SQL Server (InstanceName),默认实例为SQL Server (MSSQLSERVER)),确认服务处于正在运行状态,未启动则右键启动。

3. 配置SQL Server网络连通性

  • 开启远程连接:通过SSMS连接实例后,右键实例→属性→连接,勾选「允许远程连接到此服务器」。
  • 启用TCP/IP协议:打开SQL Server配置管理器→SQL Server网络配置→对应实例的协议,确保TCP/IP已启用;右键TCP/IP→属性→IP地址,确认目标IP的TCP端口(默认1433)已启用,且防火墙允许该端口的入站连接。

4. 测试基础网络连通性

  • 执行ping MachineName测试目标服务器是否可达,远程服务器需确保网络无阻断。
  • 执行telnet MachineName 1433(默认端口)测试端口是否开放,不通则检查服务器防火墙、网络组策略等。

5. 确认ODBC驱动兼容性

  • 验证ODBC Driver 17 for SQL Server是否正确安装,且与目标SQL Server版本兼容(SQL Server 2008及以上版本通常支持该驱动)。

内容的提问来源于stack exchange,提问作者mnu-nasir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 07:52:42