Agent XPs disable

问题

有一天,我们发现SQL Server代理程序在SSMS“SQL Server代理程序(Agent XPs已禁用)”中为我们的SQL Server实例之一停止了以下消息,但该服务正在根据服务控制台运​​行。我试图从SQL Server Management Studio启动服务,但这不起作用。什么是问题,我该如何解决这个问题?

  大多数情况,最直接的办法是,看看Agent服务是否开启。

有一天我改变了我们的一个SQL Server实例的实现。更改之后,我从services.msc控制台启动了所有SQL Server服务,并且所有事情都已成功启动。但是当我启动SQL Server Management Studio时,SQL Server Agent显示未与'Agent XPs disabled'消息一起运行,如下所示。我试图从SSMS重新启动服务,但没有奏效。有趣的是,当我在services.msc控制台中查看服务时,服务显示为“开始”。

SQL代理程序在代理程序XP禁用时停止

由于SQL Server Agent未在SSMS中运行,因此我们无法访问任何内容,如作业,错误日志等等。 

看来,当'Agent XPs'高级配置选项被禁用并且为SQL Server配置设置为0时,会出现此问题。

代理XP是一种高级配置选项,它使服务器上的SQL Server代理扩展存储过程成为可能。未启用时,SQL Server Agent将不会在SSMS中处于活动状态。大多数情况下,当您启动SQL Server服务时,它会自动启用“Agent XP”,但有时无法启用或设置值为0,则会出现此问题。

要解决这个问题,我们应该首先将'Agent XPs'设置为1,然后运行RECONFIGURE以使其生效。

步骤1.  
运行sp_configure以检查“Agent XPs”的值。

EXEC SP_CONFIGURE'Agent XPs'

 

运行SP_configure来检查Agent XP的值

步骤2
以上屏幕截图显示此实例未启用高级选项,因此我们必须先启用高级选项才能看到所有高级配置值。

EXEC SP_CONFIGURE'显示高级选项',1GO
RECONFIGUREGO
EXEC SP_CONFIGURE'显示高级选项'

 

启用sp_configure中的所有高级选项

您可以看到'show advanced options'设置为1,这意味着高级选项已启用,并且我们可以查看和更改这些值。

步骤3
再次运行sp_configure以检查Agent XP的值。在这里我们可以看到运行值被设置为0。

check_Agent_XPs值

现在我们需要将此设置从0更改为1,以在SQL Server Management Studio中运行SQL Server代理。

EXEC SP_CONFIGURE'Agent XPs',1GO
RECONFIGURE

 

在sp_configure中启用Agent XP高级选项

第4步
现在,从SQL Server配置管理器重新启动您的SQL Server代理服务。这次服务应该出现,我们可以成功访问SQL Server代理的所有内容。

SQL Server代理启动
下一步
    • 始终使用SQL Server配置管理器启动SQL Server服务
    • 如果您在SQL Server中收到此消息,请检查配置设置以启用Agent XP
    • 阅读SQL Server代理上的其他文章

转载自:https://www.mssqltips.com/sqlservertip/2729/how-to-start-sql-server-agent-when-agent-xps-show-disabled/

posted @ 2018-06-04 10:08  郭大侠1  阅读(2264)  评论(0编辑  收藏  举报