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

无法远程连接数据库时使用BCP命令遇登录失败问题求助

解决BCP远程连接SQL Server登录失败的问题

嘿,我一眼就发现问题的核心啦!你在BCP命令里同时混用了两种互斥的身份验证方式,这直接导致了登录失败错误。

问题根源

你同时使用了:

  • -T 参数:这代表启用Windows集成身份验证,BCP会用当前登录Windows的用户(也就是错误提示里的 KASRA\mnaghsh)尝试连接SQL Server
  • -U sa -P 0000 参数:这是指定SQL Server身份验证的账户和密码

SQL Server无法同时识别两种身份验证方式,所以抛出了Login failed for user 'KASRA\mnaghsh'的错误。

解决方案

根据你实际想使用的身份验证方式,修改BCP命令二选一即可:

方案1:使用SQL Server身份验证(sa账户)

去掉 -T 参数,确保SQL Server已启用SQL身份验证,且sa账户有权限访问目标表:

bcp "Select personelid, '13'+date date, scheduleid, scheduleGroupName, DetailCollectionID, Name, TimesStructure, DayNO, Sequence, WPID, ToleranceTimes, DayState, StructureID, ID, STime, ETime from framework.att.PersonDateStructure" queryout "D:\test\pds.txt" -c -S 10.0.0.108 -U sa -P 0000

方案2:使用Windows集成身份验证

去掉 -U 和 -P 参数,同时确保当前Windows用户 KASRA\mnaghsh 在远程SQL Server上已创建登录名,且拥有访问framework.att.PersonDateStructure表的权限:

bcp "Select personelid, '13'+date date, scheduleid, scheduleGroupName, DetailCollectionID, Name, TimesStructure, DayNO, Sequence, WPID, ToleranceTimes, DayState, StructureID, ID, STime, ETime from framework.att.PersonDateStructure" queryout "D:\test\pds.txt" -T -c -S 10.0.0.108

额外检查项

如果修改后仍无法连接,还需要确认:

  • 远程SQL Server的防火墙是否开放了1433端口(SQL Server默认端口)
  • SQL Server配置管理器中是否启用了TCP/IP远程连接
  • 若用SQL身份验证,需确认SQL Server实例已允许混合身份验证模式

内容的提问来源于stack exchange,提问作者Mohammad Naghsh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:52:35