Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server代理权限与用户权限_Sql Server_Sql Server Agent - Fatal编程技术网

Sql server SQL Server代理权限与用户权限

Sql server SQL Server代理权限与用户权限,sql-server,sql-server-agent,Sql Server,Sql Server Agent,我在SQL Server 2012上被设置为管理员,我创建了一个作业,该作业运行一个过程,从两个联接表中选择记录。当我登录SSMS并手动启动作业时,这一切都可以正常工作。问题是,当我尝试安排作业运行时(即使我仍然登录到SSMS),同一作业不会从第二个表返回记录,就像联接不起作用一样 我检查了,SQL代理正在使用主SQL Server服务帐户,我假设该帐户对所有内容都有权限 如果您有任何关于故障排除的想法,我们将不胜感激。在sql作业的步骤页面上,您可以告诉它以特定用户的身份“运行” 否则,运行S

我在SQL Server 2012上被设置为管理员,我创建了一个作业,该作业运行一个过程,从两个联接表中选择记录。当我登录SSMS并手动启动作业时,这一切都可以正常工作。问题是,当我尝试安排作业运行时(即使我仍然登录到SSMS),同一作业不会从第二个表返回记录,就像联接不起作用一样

我检查了,SQL代理正在使用主SQL Server服务帐户,我假设该帐户对所有内容都有权限


如果您有任何关于故障排除的想法,我们将不胜感激。

在sql作业的步骤页面上,您可以告诉它以特定用户的身份“运行”

否则,运行SQL Server代理的帐户必须拥有对所有数据库/表等的权限

通过查看作业历史记录,您应该能够看到作业按计划运行时发生的情况。您可以通过右键单击作业列表中的作业或右键单击作业监视器中的作业并选择“查看历史记录”来完成此操作


希望这有帮助。

是一份腐败的工作。我删除了该作业并重新创建了一个新作业,它按预期工作。

作业历史记录中有任何提示吗?@artm,没有错误消息,因为作业运行正常-数据不完整。如果我从SSMS手动启动作业,我将从两个表中获取数据,如果我计划它将忽略连接并仅返回一半数据。当我手动运行过程时,没有运行方式-没有问题。当我手动运行作业(运行相同的过程)时,没有运行方式-没有问题。当我在没有运行方式设置的情况下安排作业时,它只提供一半的数据,没有错误。(我们确实使用直通式身份验证),当我尝试将凭据放入运行方式框时,它甚至无法手动运行,并出现错误:服务器用户''%1!''不是数据库''%2!''中的有效用户。这种安全性让我感到困惑。数据库最近是否从另一台服务器移动?请参阅本文:除了我前面提到的文章中的信息外,您或其他管理员还应该检查您计划用于定期运行作业的服务器登录名和数据库用户。快速提问:两个联接表是否在同一数据库中?我们通常会使用我们所谓的“服务账户”;通常是对数据库拥有db_所有者权限的SQL登录。您可以将其中一个设置为测试,以验证它是否正常工作,然后稍后微调安全设置。它最近没有移动,并且是两个独立的数据库-实际上是同一实例上的6个数据库。我们没有做太多的SQL工作,只是想让它使用我的帐户。由于您是该服务器的管理员,您应该能够创建SQL登录,除非您的SQL服务器仅设置为使用Windows身份验证,在这种情况下,您必须使用Windows帐户。无论哪种方式,您都可以在主目录树的安全文件夹下创建登录-右键单击登录-新建登录-常规页面:对于Windows登录,请单击搜索以查找用户帐户-对于SQL登录,请输入有意义的名称和密码-取消选中“用户必须更改密码…”-将默认数据库保留为“主数据库”-用户映射页面:勾选db;dbo作为默认模式