使用域帐户configurationSQL Server代理仍然无法启动代理

我试图按照SharePoint Server 2010安装的最佳做法和SQL Server代理将无法启动。 我的第一个参考是:

使用Least Privilege Service帐户安装SharePoint 2010

总之,我正在使用一个域帐户启动MSSQLSERVER本身和SQLSERVERAGENT服务, 因为他build议 (即我正在使用myDomain \ SQLsrvcs

这是代理失败时的错误日志(SQLAGENT.OUT):

2011-06-07 15:06:02 - ! [298] SQLServer Error: 15247, User does not have permission to perform this action. [SQLSTATE 42000] (DisableAgentXPs) 2011-06-07 15:06:02 - ! [298] SQLServer Error: 229, The EXECUTE permission was denied on the object 'sp_sqlagent_has_server_access', database 'msdb', schema 'dbo'. [SQLSTATE 42000] (ConnIsLoginSysAdmin) 2011-06-07 15:06:02 - ! [298] SQLServer Error: 229, The EXECUTE permission was denied on the object 'sp_sqlagent_get_startup_info', database 'msdb', schema 'dbo'. [SQLSTATE 42000] 2011-06-07 15:06:02 - ! [298] SQLServer Error: 229, The INSERT permission was denied on the object 'syssessions', database 'msdb', schema 'dbo'. [SQLSTATE 42000] 2011-06-07 15:06:02 - ! [000] Error creating a new session 2011-06-07 15:06:02 - ? [098] SQLServerAgent terminated (normally) 

MSSQLSERVER可以正常启动,但代理程序如上所述失败。 “Sharepoint George”的build议并不表示SQL的实例需要一个LOGIN(而且我读“不应该有的”最小特权“消息)。

然而,在另一个地方给出build议:

为SQL Server代理服务select一个帐户

在本文中,Microsoft指出:“运行SQL Server代理服务的帐户必须是以下SQL Serverangular色的成员:

该帐户必须是sysadmin固定服务器angular色的成员。“

我不知道如何使这个域帐户成为系统pipe理员angular色的成员,而不是先将它添加为login名 – 但这似乎打败了第一位专家的指导。

我必须错过某些东西或推断我不应该做的事情。 请build议这些SQL服务帐户的最佳实践(尤其是当SharePoint Server 2010将安装在同一台服务器上时)。 谢谢。

这与SharePoint以及与SQL Server有关的一切无关。

SQL Server代理服务有效运行的帐户需要对其操作的SQL Server实例进行全面的系统pipe理员访问,因为其angular色是在实例及其数据库上执行作业。

如果使用SQL Serverconfigurationpipe理器select代理的服务帐户,则将自动授予访问权限和权限(以及所需的“login即服务”Windows右侧)。

如果您通过手动编辑服务的属性来select它,则需要手动授予它们。

推荐的方式来select代理的服务帐户是通过configurationpipe理器。