从远程 2005 服务器上的 SQL 代理作业调用 2008 服务器上的 SSIS 包
我正在尝试远程执行 SSIS 包,但没有成功。该包驻留在 SQL Server 2008 实例上,我想从 2005 服务器上的作业调用它。我收到的错误是:
无法加载包。这 步骤失败。
如果我从2008年转到2008年,就没有错误。有什么想法吗?
I'm trying, unsuccessfully, to remotely execute an SSIS package. The package resides on a SQL Server 2008 instance and I'd like to call it from a Job on a 2005 server. The error I'm getting is:
The package could not be loaded. The
step failed.
If I go from 2008 to 2008, there is no error. Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
假设您尝试使用 dtexec 命令执行包,问题在于该包是在调用服务器上执行的,而不是在存储它的服务器上执行的。
由于 2005 SSIS 服务无法执行 2008 包,因此该步骤失败。
您需要在要运行作业的服务器上触发
dtexec
。最简单的方法可能是在 2008 服务器上设置一个 SQL 代理作业来启动包,并从 2005 服务器触发该作业(使用 sp_startjob 或一些更复杂的触发机制)。Assuming that you're attempting to execute the package with a
dtexec
command, the issue is that the package is executed on the calling server, not the server where it is stored.Since the 2005 SSIS service can't execute 2008 packages, the step fails.
You need to trigger the
dtexec
on the server where you want the job to run. The easiest way to do this is probably to set up a SQL Agent job on the 2008 server which starts the package, and trigger that from the 2005 server (using sp_startjob or some more complex trigger mechanism).您运行的帐户是否具有 SQL 2005 框的权限。您可以创建一个代理来运行作业。
Does the account your are running under have permissions on the SQL 2005 box. You can create a proxy under which to run the job.