如何使用ssms或ssis包将SSIS包从MSDB数据库复制到文件系统

问题描述 投票:1回答:1

有没有办法使用SSISSSMS包将SSIS包从MSDB数据库复制到文件系统。

我的尝试在哪里:

  1. dtutil使用xp_cmdshellSSMS QUERY EXEC xp_cmdshell 'dtutil /sourceserver SERVERNAME\INSTANCENAME /SQL "\TestingData\Package" /copy file;"c:\Package.dtsx"'

结果:

enter image description here

注意:使用没有xp_cmdshelldtutil没问题,因为我做了一个成功的'文件复制'。

  1. 我的第二次尝试是相同的,但使用SSIS组件Execute Process task

enter image description here

但结果是:

错误:0xC0029151在执行进程任务,执行进程任务:在执行“C:\ Windows \ System32 \ cmd.exe”“dtutil / sourceserver servername \ instancename / SQL”\ TestingData \ Package“/ copy file;”c:\ Package .dtsx“”at“”,进程退出代码为“1”,而预期为“0”。任务失败:执行流程任务

sql-server ssis etl sql-server-data-tools
1个回答
0
投票

Suggestions

有许多事情需要考虑:

  1. 在第一个屏幕截图中,您获得的输出是Access被拒绝,因此首先检查您是否对C:\驱动器具有写入权限,或尝试复制到另一个路径。
  2. 尝试重新排序传递给dtutil工具的参数,并在包路径之前删除\EXEC xp_cmdshell 'dtutil /SQL TestingData\Package /sourceserver SERVERNAME\INSTANCENAME /Copy File;"c:\Package.dtsx"'
  3. 您必须在上面的命令中对要连接的SQL实例进行Windows身份验证,因此如果您没有此类身份验证,请尝试使用SQL身份验证: EXEC xp_cmdshell 'dtutil /SQL TestingData\Package /SourceServer SERVERNAME\INSTANCENAME /SourceUser Monkey_User /SourcePassword P@$$word /Copy file;"c:\Package.dtsx"'

References

© www.soinside.com 2019 - 2024. All rights reserved.