我正在尝试在2014年的实例和2016年的实例上运行SQL Server Agent。目前它们都启动但随后立即停止并显示以下消息:本地计算机上的SQL Server代理(VERSION16)服务已启动然后停止。如果某些服务未被其他服务或程序使用,则会自动停止。
我在其他问题上读到这通常是由于权限问题造成的。我检查了事件查看器,但我看到的只是事件ID 101:SQLServerAgent服务已成功启动。然后是事件ID 102:SQLServerAgent服务已成功停止。
为了排除权限问题,我进入了以管理员身份运行的SQL Server配置管理器,转到代理属性并切换到内置帐户:本地系统。当我单击确定时,我收到以下错误:进程意外终止。 [0x8007042b]。
我不确定从哪里开始。我需要这个代理,因为有几个夜间作业需要在这个实例上运行的生产数据库上运行。其中一个是夜间备份,目前从未执行过。我以本地和域管理员的用户身份登录系统,因此此处不应存在任何权限问题,如果您能想到其他任何我可以尝试使其正常工作,请告诉我。
以下是错误日志:
2017-08-31 15:25:10 - ? [100] Microsoft SQLServerAgent版本13.0.4001.0(X64 unicode零售版本):进程ID 19680 2017-08-31 15:25:10 - ? [495] SQL Server代理启动服务帐户是NE-REVAL \ NEREVAL $。 2017-08-31 15:25:11 - ? [393]等待SQL Server恢复数据库'msdb'... 2017-08-31 15:25:11 - ! [298] SQLServer错误:229,对象'sp_sqlagent_update_agent_xps',数据库'msdb',架构'dbo'上的EXECUTE权限被拒绝。 [SQLSTATE 42000](DisableAgentXPs) 2017-08-31 15:25:11 - ! [000]对象'sp_sqlagent_update_agent_xps',数据库'msdb',schema'dbo'上的EXECUTE权限被拒绝。 [SQLSTATE 42000](错误229) 2017-08-31 15:25:11 - ! [298] SQLServer错误:229,对象'sp_sqlagent_update_agent_xps',数据库'msdb',架构'dbo'上的EXECUTE权限被拒绝。 [SQLSTATE 42000](DisableAgentXPs) 2017-08-31 15:25:11 - ! [000]对象'sp_sqlagent_update_agent_xps',数据库'msdb',schema'dbo'上的EXECUTE权限被拒绝。 [SQLSTATE 42000](错误229) 2017-08-31 15:25:11 - ? [098] SQLServerAgent终止(通常)
答案 0 :(得分:1)
它是否停止工作,或者这是一个新的安装?
尝试更改SQL Server代理以使用SQL Server正在使用的相同帐户。
如果这不起作用,请创建一个新的本地用户(例如" mssqlsvc2014"或" mssqlsvc2016")并使用SQL Server配置管理器来拥有SQL Server代理使用该用户。