首页> 数据库> Job执行与Job Owner及SQL Agent账...

[文章]Job执行与Job Owner及SQL Agent账号关系

收藏
0 851 0

代理作业执行与Job OwnerSQL Agent账号关系

【摘要】

本文档旨在阐述SQL SERVER代理作业在调用执行的过程中,针对于Job Owner以及SQL Agent账号,代理作业在不同条件下是以何种账号身份去执行调用的。

【正文】

       SQL Server的代理作业中包含了很多属性,其中Job Owner的属性对于代理作业的执行有着极其重要的作用。代理作业执行调用的数据库又分为本地和远程数据库,针对于不同的场景,代理作业的执行身份也会不同。

1      场景一:代理作业执行调用对象为本地服务器数据库

1.1      若代理作业为T-SQL Step时,如果job owner在本地sysadmin固定服务器角色中,  作业将会在Sql Server Agent service的账户下运行,否则将以job owner身份执行;

测试验证:新建查询本地数据库作业SELECT,并赋予SELECT作业的Job Owner账号为TSUSER_B1,若TSUSER_B1账号不属于sysadmin固定服务器角色,则执行此作业时是以TSUSER_B1身份执行;


若赋予TSUSER_B1账号sysadmin固定服务器角色权限,则执行此作业是以Sql Server Agent service账号执行;

   




1.2      job stepCmdExec或者ActiveXScript job或者DTS step,如果 job owner在本地sysadmin固定服务器角色中,  作业将会在Sql Server Agent service的账户下运行;否则作业将会在Proxy Account下运行;如果proxy account没有配置,作业步骤将失败。

测试验证:在配置好Proxy Account账号情况下执行SSIS包:

a) 新建凭据ALLEN


b) 新建代理ALLEN并配置执行SSIS包属性




c) 新建执行SSIS包作业,运行身份选择上述步骤配置的ALLEN代理

d) 执行SSIS包作业,在Proxy Account配置完成以及Job Owner账号TSUSER_B1不属于sysadmin角色的情况下,该作业是以代理账号身份执行;

 

如果proxy account没有配置,作业将失败(Agent 属性中的job system 标签页配置)。同时,proxy account账号需要配置为具有访问网络上其它服务器的权限,否则该作业仍然会失败。


2      场景二:代理作业执行调用对象为远程服务器数据库

2.1      若代理作业为T-SQL Step时,如果job owner在本地sysadmin固定服务器角色中,  作业将会在本地服务器Sql Server Agent账户下运行,否则将以job owner身份执行;

代理作业在执行调用远程服务器数据库对象时,需要在本地服务器上新建远程服务器的链接服务器,并且需要对Job Owner或者Sql Server Agent账号进行用户映射,才能实现作业的远程执行成功;


Ø  Job Owner在本地服务器中不属于sysadmin角色,则需要将Job Owner账号在链接服务器上配置映射到远程服务器;

Ø  Job Owner在本地服务器中属于sysadmin角色,则需要将本地服务器的SQL Server Agent账号在链接服务器上配置映射到远程服务器。

2.2      job stepCmdExec或者ActiveXScript job或者DTS step,如果 job owner在本地sysadmin固定服务器角色中,  作业将会在Sql Server Agent账户下运行;否则作业将会在Proxy Account下运行;

代理作业不论是以本地服务器的SQL Server Agent账号运行,还是以Proxy Account账号运行,执行账号都需要在远程服务器上具有远程数据库的作业执行权限,否则作业将失败。例如,如果作业执行的操作是查询远程数据库,则执行作业的账号需要对远程服务器的目标数据库具有查询权限。


2.3      代理作业远程执行调用与远程服务器SQL Server Agent账号的关系

经测试验证,代理作业在执行或调用远程服务器的数据库时,与远程服务器的SQL Server Agent账号以及服务均没有关系,但是与远程服务器的SQL Server服务以及账号存在联系,如果远程服务器的SQL Server账号在域中被禁用,代理作业会因为无法调用远程服务器SQL Server服务而失败。




 

数据库
最近热帖
{{item.Title}} {{item.ViewCount}}
近期热议
{{item.Title}} {{item.PostCount}}