sql代理作业不自动执行的原因及解决办法

错误提示:

执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)

------------------------------

SQLServerAgent 当前未运行,因此无法将此操作通知它。 (Microsoft SQL Server,错误: 22022)

错误原因是因为SQLServerAgent代理没有启动

要正常运行sqlserver的维护计划,必须启动sqlserver agent代理服务。

如果确定sqlserver agent服务已经启动,但维护计划仍然不执行,可以到sqlserver的企业管理器客户端工具左边的树菜单中,选择管理-sql server代理-作业,然后在右边的一个作业项上点击右键,启动作业,这时,会弹出一个报错提示,错误 22022: SQLServerAgent 当前未运行以便不能将此操作通知它。

出现该问题的原因是,sqlserver代理服务不能正确识别注册表中代表本地计算机的点号,具体的键值位置在:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLSERVER\

上面的是默认实例的位置,其他实例如下:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQL$InstanceName\

InstanceName是具体的实例名称。

解决方法:

启动AGENT服务(需要mssql server AGENT服务作业才能自动运行)
exec master.dbo.xp_cmdshell 'net start sqlserveragent',NO_OUTPUT


sql server 2005下开启xp_cmdshell的办法

EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;


SQL2005开启'OPENROWSET'支持的方法:

exec sp_configure 'show advanced options', 1;RECONFIGURE;exec sp_configure 'Ad Hoc Distributed Queries',1;RECONFIGURE;


SQL2005开启'sp_oacreate'支持的方法:

exec sp_configure 'show advanced options', 1;RECONFIGURE;exec sp_configure 'Ole Automation Procedures',1;RECONFIGURE;


xp_cmdshell的介绍


阅读更多
个人分类: 技术人生のSQL篇
上一篇SQL Server 2008 定时执行sql语句作业的制定
下一篇XP_cmdshell
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭