SQL Server Agent在哪里保存作业?

时间:2012-10-08 17:27:59

标签: sql sql-server restore sql-server-agent

我的服务器已关闭,我只能从中获取硬盘。我找到了我的数据库并复制了它,但我可以在哪里找到代理工作?他们在哪里救了?

3 个答案:

答案 0 :(得分:15)

在MSDB数据库中,作业存储在名为dbo.sysjobs的表中。这将连接到一个名为dbo.sysjobsteps的表,该表存储各个步骤的详细信息。时间表存储在dbo.sysjobschedules中,历史记录存储在dbo.sysjobhistory中。

MSDB还将包含其他实例级对象,例如警报,运算符和SSIS包。

答案 1 :(得分:12)

作业存储在msdb database中。你将不得不恢复它。

答案 2 :(得分:2)

让我展示以下精彩的SQL query,向我们展示SQL Server在何处以及如何存储SQL作业。

-- List of all the SQL Jobs on a server with steps
SELECT
     job.job_id,
     notify_level_email,
     name,
     enabled,
     description,
     step_name,
     command,
     server,
     database_name
FROM
    msdb.dbo.sysjobs job
INNER JOIN 
    msdb.dbo.sysjobsteps steps        
ON
    job.job_id = steps.job_id
WHERE 1=1
    --AND job.enabled = 1 -- uncomment this to see enabled SQL Jobs

我还删除了“ msdb”。查询中的前缀以查看从备份还原的msdb数据库中的SQL作业。