SQL server 维护计划无法手动删除的解决办法

原文链接:https://blog.csdn.net/qq_17858059/article/details/106196863

SQL server 因为需要定时备份数据库,一般情况下大家都会选择在管理的维护计划中创建维护计划,因各种原因创建的维护计划不合适或者不用需要删除时,有时候会提示无法删除,各种提示报错。

以下是无法手动删除时,通过sql语句删除的步骤。

--【1】删除【管理】中的维护计划
use msdb
go
select * from sysmaintplan_plans
Delete sysmaintplan_plans where Name='维护计划'

--【2】删除【SQLserver代理】中的作业

USE [msdb]
Declare @job_name varchar(100)
--SET @job_name = N'jobName'
SET @job_name=N'数据库备份.Subplan_1'
--注:jobName为维护计划对应的jobName

--删除在计划里面的日志
DELETE sysmaintplan_log
FROM sysmaintplan_subplans as subplans
INNER JOIN sysjobs_view as syjobs on subplans.job_id = syjobs.job_id
INNER JOIN sysmaintplan_log on subplans.subplan_id =sysmaintplan_log.subplan_id
WHERE (syjobs.name = @job_name)

--删除代理的作业
DELETE sysjobschedules
FROM sysjobs_view v
INNER JOIN sysjobschedules o on v.job_id=o.job_id
WHERE v.name=@job_name

--删除子计划
DELETE sysmaintplan_subplans
FROM sysmaintplan_subplans as subplans
INNER JOIN sysjobs_view as syjobs ON subplans.job_id = syjobs.job_id
WHERE (syjobs.name = @job_name)
--删除作业
DELETE FROM msdb.dbo.sysjobs_view WHERE name = @job_name

posted @   yinghualeihenmei  阅读(113)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2022-11-25 C#类属性之get与set
2022-11-25 “/”应用程序中的服务器错误。未将对象引用设置到对象的实例。
2022-11-25 合并PDF
点击右上角即可分享
微信分享提示