繁体   English   中英

SQL Server 代理在哪里保存作业?

[英]Where does SQL Server Agent save jobs?

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

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

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

作业存储在msdb数据库中 你将不得不恢复它。

让我展示以下精彩的SQL 查询,向我们展示 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 作业。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM