Zaobserwowałem problem z planem konserwacji (Maintenance Plan), którego nie mogę usunąć. Podczas próby skasowania pojawia się następujący błąd:

Index was out of range. Must be non-negative and less than the size of the collection.Parameter name: index (mscorlib)

Analogiczny błąd powstaje przy próbie wykasowania joba, który został utworzony z poziomu Maintenance Planu.

Poniżej przedstawiam kolejne kroki w celu usunięcia niechcianego Maintenance Planu:

USE MSDB

--wybrać id dla planu, który ma być wykasowany
select * from sysmaintplan_plans 
where name = 'szukana nazwa planu'

-- id = 9B331D57-C0AB-4B50-BD98-05BC39AB6F00

delete from sysmaintplan_log 
where plan_id = '9B331D57-C0AB-4B50-BD98-05BC39AB6F00'

delete from sysmaintplan_subplans 
where plan_id = '9B331D57-C0AB-4B50-BD98-05BC39AB6F00'

delete from sysmaintplan_plans 
where id = '9B331D57-C0AB-4B50-BD98-05BC39AB6F00'

Po wykasowaniu Maintenance Plan można już z poziomu SSMS wykasować joba, który miał uruchamiać Maintenance Plan.


Dariusz Brejnak

Od prawie trzydziestu lat jest pasjonatem informatyki, a zwłaszcza dziedzin dotyczących baz danych, hurtowni danych oraz ogólnie rozumianej tematyki BI. Jego druga pasja to fotografia http://dariuszbrejnak.pl