use*_*032 4 sql-server bcp xp-cmdshell sql-server-2012
I\xe2\x80\x99m 使用调用 xp_cmdshell 的 SQL 存储过程。xp_cmdshell 已启用,并且代理帐户设置为 \xe2\x80\x98vpexporter\xe2\x80\x99。该存储过程旨在将数据文件写入磁盘。
\n\n该存储过程在 SQL 2005 服务器上时一直在工作。环境已升级到SQL 2012,sproc不再运行。拨打电话的线路是:
\n\nset @sql1 = \'bcp "SELECT * FROM dbo.udPayrollOutput" queryout "D:\\Repository\\Exports\\\' + @fileunique -Uvpexporter -Ppassword -c -t,\' \nexec master..xp_cmdshell @sql1\nRun Code Online (Sandbox Code Playgroud)\n\n在 SSMS 中运行它会给出以下结果:
\n\n\n\n\nSQLState = 28000。NativeError = 18456 错误 = [Microsoft][SQL Server\n Native Client 11.0][SQL Server]用户 \xe2\x80\x98vpexporter\xe2\x80\x99 登录失败。
\n
我已经尝试过使用 SQL 登录和域帐户进行此操作。两者都返回相同的错误。\xe2\x80\x98vpexporter\xe2\x80\x99 已添加为登录名,并已设置为具有 xp_cmdshell 执行权限的主数据库用户。
\n\n我觉得 SQL 版本 2012 的 xp_cmdshell 调用方式一定发生了变化,但我在谷歌搜索时还没有发现任何东西。
\n\n我尝试运行“exec xp_cmdshell \'whoami.exe\'”,它返回\'nt Authority\\network service\',这是 SQL Server 正在运行的帐户。
\n\n我的理解是,通过使用 \'sp_xp_cmdshell_proxy_account\' 指定命令 shell 代理帐户,它将使用它。我不想授予 xp_cmdshell 对网络服务的执行访问权限。
\n\n我已经取得了一些进展,但仍然陷入困境。最初的错误是由于新环境需要通过在我的查询行中添加“-S ServerName\\InstanceName”来指定 SQL 实例。我现在收到错误:
\n\n\n\n\n无法启动 \'cvADPTaxCreditExp\' 存储过程。\n 对对象 \'xp_cmdshell\'、数据库 \'mssqlsystemresource\'、架构 \'sys\' 的 EXECUTE 权限被拒绝。
\n
我已向代理帐户授予 master 中 xp_cmdshell 的执行权限,但仍然收到此错误。
\n\nexec sp_xp_cmdshell_proxy_account \'NEWMECHDOM\\vpexporter\', \'password\';\nGRANT EXECUTE ON xp_cmdshell TO [NEWMECHDOM\\vpexporter];\nRun Code Online (Sandbox Code Playgroud)\n\n我已经用这个验证过:
\n\nselect * from sys.credentials\nRun Code Online (Sandbox Code Playgroud)\n\n还有其他地方需要设置安全性吗?
\n小智 5
bcp.exe我在 SQL Server 2008 R2 计算机上运行的批处理文件中使用时遇到了同样的问题:指定用户/密码-U -P返回“NativeError = 18456”(登录失败),我使用参数“可信连接”解决了这个问题-T。
BCP.EXE调用错误 18456 是:
bcp.exe "SELECT * from DWH.BS.flussi.vw_KLINX_Anagrafiche800" queryout %fname% -t";" -c -SLOCALHOST -dMEF -Uxxx -Pyyy
Run Code Online (Sandbox Code Playgroud)
BCP.EXE工作电话是:
bcp.exe "SELECT * from DWH.BS.flussi.vw_KLINX_Anagrafiche800" queryout %fname% -t";" -c -SLOCALHOST -dMEF -Uxxx -Pyyy -T
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12115 次 |
| 最近记录: |