如何删除顽固的SQL 2005维护计划

时间:2009-04-09 10:04:21

标签: sql-server-2005

我们的SQL 2005服务器有一个无法删除的维护计划。

当我尝试通过Management Studio删除它时,我收到以下错误:

  

执行时发生异常   Transact-SQL语句或批处理。   (Microsoft.SqlServer.ConnectionInfo)    - >对象'sysmaintplan_plans'上的SELECT权限被拒绝,   数据库'msdb',架构'dbo'。   (Microsoft SQL Server,错误:229)

其SQL 2005企业版版本9.0.3042.0

我已经能够修改计划,使其无法执行任何操作,但我无法重命名或删除它。

我预感到这可能与Service Pack 2有关,因为维护计划可能是在应用SP2之前创建的,我听说有些人在这种情况下遇到了问题。

编辑:我以sa

登录

3 个答案:

答案 0 :(得分:0)

感谢SqlACID提出解决此问题的建议(参见问题评论)

我一直在另一台机器上使用Management Studio。

在服务器上运行Management Studio(并以SA身份登录)允许我删除顽固的维护计划。

答案 1 :(得分:0)

由于权限问题,我无法删除维护计划。 “用户SA的身份验证失败” - 我使用服务器上的Management Studio以SA身份登录。

以下是我能够解决问题的方法:

  • 打开问题维护计划。
  • 添加一个新的(空)子计划。
  • 删除第一个(现有)子计划。

作为预防措施,我也这样做了:

  • 点击管理连接按钮。
  • 在“管理连接”对话框中单击编辑
  • 覆盖SA用户名和密码。
  • 点击确定> 关闭以返回维护计划。

最后

  • 保存维护计划。
  • 删除维护计划。

希望这有帮助。

答案 2 :(得分:0)

我对Pete的建议没有成功,但我确实按照这里的步骤取得了成功:https://social.msdn.microsoft.com/forums/sqlserver/en-US/ae6f809f-ef74-4534-8327-b7b120a2d700/unable-to-delete-a-sql-2005-maintenance-plan

见kahil kahalas的帖子:它说:

您也可以使用T-Sql删除SQL 2005维护计划。

我们需要执行以下步骤,从sysmaintplan_log表或sysmaintplan_subplans表中删除作业或维护计划。

第1步: 执行以下查询以获取维护计划名称和Id SELECT NAME,ID FROM MSDB..SYSMAINTPLAN_PLANS

(确保为步骤2,3和4选择了msdb)

第2步: 将步骤1中获取的Id替换为以下查询,并从日志表中删除该条目 从SYSMAINTPLAN_LOG删除WHERE PLAN_ID =''

第3步: 将步骤1中获取的Id替换为以下查询,并从子计划表中删除该条目,如下所示, 从SYSMAINTPLAN_SUBPLANS删除WHERE PLAN_ID =''

第4步: 最后使用以下查询删除维护计划,其中ID是从Step1获得的 从SYSMAINTPLAN_PLANS删除WHERE ID =''

第5步: 检查并删除SSMS中的作业(如果存在)。

(我必须进入Jobs Activity Monitor并从那里删除它。)

希望它能帮到你!

卡普尔卡拉斯