Error message here!

Hide Error message here!

忘记密码?

Error message here!

请输入正确邮箱

Hide Error message here!

密码丢失?请输入您的电子邮件地址。您将收到一个重设密码链接。

Error message here!

返回登录

Close

Agent Job代理 执行SSIS Package

LynHou 2019-01-24 14:35:00 阅读数:213 评论数:0 点赞数:0 收藏数:0

摘要: 在使用Agent Job时, 运行SSIS包的Run as账号,必须有SSIS中connection manager的连接权限。

            如果没有连接权限,可以用创建proxy账号,并确保proxy账号有连接权限的方式来执行。

 

案例:

1. Package包中,用到了ODBC的方式连接到数据源,但是创建的ODBC是User DNS(仅对当前账号可用),而非System DNS(所有登录到改机的用户都可用,包括NT Services)     

SSIS连接:

 

 

2. 创建的SSIS包,在项目中手工运行时没有问题;但是在Agent Job中做定时调用时,就会报错 0xC0014009.

    这里用的默认Run as账号: SQL Server Agent Service Account, 因为该账号没有查看ODBC的User DNS的权限,所以报错;若是想使用这个默认Agent账号运行,可以尝试创建ODBC数据源的时候,使用System DNS的方式。

 

3. 若想在User DNS下,依然能在Job中调用,则需要创建一个proxy代理账号,并确保该代理账号能够访问User DNS, 然后使用该账号运行SSIS Package.

 

这个账号,需要在Credential中创建出来的,这里admin具有查看User DNS的权限,因此在Job中再Run as执行定时任务时,就没有问题了。

 

版权声明
本文为[LynHou]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/lynhou/p/10314311.html

编程之旅,人生之路,不止于编程,还有诗和远方。
阅代码原理,看框架知识,学企业实践;
赏诗词,读日记,踏人生之路,观世界之行;

支付宝红包,每日可领