在sql 2008 R2中删除了维护计划中的作业

时间:2014-12-18 11:40:31

标签: sql-server-2008

如何在SQL 2008 R2上的维护计划中还原已删除的作业。或者是否有文件位置,我可以在其中复制维护计划中注入的脚本..

1 个答案:

答案 0 :(得分:0)

您是否备份了这些工作?

这就是我们每周编写所有工作的一个原因Whistling

你能做的是:(在测试服务器上,如果你可以!)

  • 关闭SQLAgent。
  • 对msdb进行新备份(到新的备份文件!!!)
  • 恢复以前的msdb bacup
  • 激活代理xp - 启用Agent XPs

    EXEC sp_configure'Agent XPs','1'   RECONFIGURE

  • 编写您的工作

  • 恢复新创建的msdb备份

  • 在上一步

  • 中从脚本中实现作业
  • 启动sqlagent

实际上,您可以像任何其他userdb一样恢复msdb,例如

RESTORE DATABASE [msdb_rest] FROM DISK =
    N'X:\MSSQL.1\MSSQL\Backup\msdbFull.BAK' 
WITH FILE = 1
, MOVE N'MSDBData' TO N'X:\MSSQL.1\MSSQL\DATA\msdb_rest.mdf'
, MOVE N'MSDBLog' TO N'X:\MSSQL.1\MSSQL\DATA\msdb_rest_1.ldf'

GO

请记住,您正在篡改系统内容! 这不是建议!!

所以你可以用这种方式提取失踪工作的数据

insert into msdb.dbo.sysjobs
SELECT *
from msdb_rest.dbo.sysjobs J
where J.name ='DBA_Db_Rebuild_Reindex'
go

insert into msdb.dbo.sysjobsteps
Select JS.*
from msdb_rest.dbo.sysjobsteps JS
inner join msdb_rest.dbo.sysjobs J
on J.job_id = js.job_id
where J.name ='DBA_Db_Rebuild_Reindex'
go

通过上述步骤,您将完成工作及其步骤。

你还没有时间表......

安全播放,以完整备份开始

我从这里读到了这个: http://www.sqlservercentral.com/Forums/Topic749226-146-1.aspx