Fórum Planos de Manutenção não executam mais #623683

04/03/2025

0

Olá pessoal,

Utilizo o SQL Server 2017 e, recentemente, fiz alteração na senha do SA. Depois disso não consegui mais executar os planos de execução que realizam o backup dos bancos em vários horários. Como posso resolver isso?

Grato,

Ilano.
Ilano Caldas

Ilano Caldas

Responder

Posts

04/03/2025

Ilano Caldas

Olá pessoal,

Utilizo o SQL Server 2017 e, recentemente, fiz alteração na senha do SA. Depois disso não consegui mais executar os planos de execução que realizam o backup dos bancos em vários horários. Como posso resolver isso?

Grato,

Ilano.


Consegui resolver! Como também não estava conseguindo excluir para refazer os planos de execução, montei o seguinte esquema para remover os planos:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
DECLARE @NOMEPLANO VARCHAR(MAX) = '06_SHRINK_FILE_02h_Quartas_e_Domingos'
 
DECLARE @PLANID VARCHAR(MAX) = (SELECT A.plan_id
                                from msdb.dbo.sysmaintplan_subplans A
                                INNER JOIN msdb.dbo.sysmaintplan_plans B ON (B.ID = A.plan_id)
                                WHERE B.name = @NOMEPLANO);
 
DECLARE @SUBPLANID VARCHAR(MAX) = (SELECT A.subplan_id
                                    from msdb.dbo.sysmaintplan_subplans A
                                    INNER JOIN msdb.dbo.sysmaintplan_plans B ON (B.ID = A.plan_id)
                                    WHERE B.name = @NOMEPLANO);
 
DECLARE @JOBID VARCHAR(MAX) = (SELECT A.job_id
                                FROM msdb.dbo.sysmaintplan_subplans A
                                INNER JOIN msdb.dbo.sysmaintplan_plans B ON (B.ID = A.plan_id)
                                WHERE B.name = @NOMEPLANO);
 
DELETE FROM msdb.dbo.sysmaintplan_plans
WHERE id = @PLANID;
 
DELETE FROM msdb.dbo.sysmaintplan_log
WHERE subplan_id = @SUBPLANID;
 
DELETE FROM msdb.dbo.sysmaintplan_log
WHERE subplan_id = @SUBPLANID;
 
delete from msdb.dbo.sysjobschedules
where job_id = @JOBID;
 
DELETE FROM msdb.dbo.sysmaintplan_subplans
WHERE plan_id = @PLANID;
 
DELETE FROM msdb.dbo.sysjobs
WHERE job_id = @JOBID;
 
delete from msdb.dbo.sysmaintplan_log
where plan_id = @PLANID;
 
DELETE FROM msdb.dbo.sysmaintplan_subplans
WHERE job_id = @JOBID;


Depois foi só ir nos trabalhos do Agente SQl Server e excluir manualmente cada plano.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar