Megosztás a következőn keresztül:


Karbantartási terv létrehozása

A következőkre vonatkozik:SQL Server

Ez a cikk azt ismerteti, hogyan hozhat létre egyetlen kiszolgálót vagy többkiszolgálós karbantartási tervet az SQL Server Management Studio vagy a Transact-SQL használatával az SQL Serverben. A Management Studio használatával kétféleképpen hozhat létre karbantartási terveket: a Karbantartási terv varázslóval vagy a tervezőfelülettel. A varázsló az alapszintű karbantartási tervek létrehozására alkalmas, míg a terv tervezőfelülettel történő létrehozása lehetővé teszi a továbbfejlesztett munkafolyamatok használatát.

Korlátozások és korlátozások

Többkiszolgálós karbantartási terv létrehozásához konfigurálni kell egy főkiszolgálót és egy vagy több célkiszolgálót tartalmazó többkiszolgálós környezetet. A többkiszolgálós karbantartási terveket a főkiszolgálón kell létrehozni és karbantartani. Ezek a tervek megtekinthetők, de nem tarthatók fenn a célkiszolgálókon.

Előfeltételek

Az Agent XPs szerverkonfigurációs beállítást engedélyezni kell.

Engedélyek

Karbantartási tervek létrehozásához vagy kezeléséhez a sysadmin rögzített kiszolgálói szerepkör tagjának kell lennie.

Az SQL Server Management Studio használata

Karbantartási terv létrehozása a Karbantartási terv varázslóval

  1. Az Object Explorerben válassza a pluszjelet annak a kiszolgálónak a kibontásához, ahol karbantartási tervet szeretne létrehozni.

  2. A plusz jel kiválasztásával bontsa ki a Felügyeleti mappát.

  3. Kattintson a jobb gombbal a Karbantartási tervek mappára, és válassza Karbantartási terv varázslólehetőséget.

  4. Kövesse a varázsló lépéseit egy karbantartási terv létrehozásához. További információ: Karbantartási terv varázsló használata.

Karbantartási terv létrehozása a tervezőfelület használatával

  1. Az Object Explorerben válassza a pluszjelet annak a kiszolgálónak a kibontásához, ahol karbantartási tervet szeretne létrehozni.

  2. A pluszjel ikon kiválasztásával bontsa ki a Felügyeleti mappát.

  3. Kattintson a jobb gombbal a Karbantartási tervek mappára, és válassza Új karbantartási tervlehetőséget.

  4. Hozzon létre egy karbantartási tervet az Karbantartási terv (Karbantartási terv tervezőfelülete)lépéseit követve.

Transact-SQL használata

Karbantartási terv létrehozása

  1. Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.

  2. A Standard sávon válassza Új lekérdezéslehetőséget.

  3. Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza a Végrehajtáslehetőséget.

    Ebben a példában a kód létrehoz egy napi SQL Agent-feladatot, amely 23:30-kor (11:30-kor) fut, amely átrendezi a AdventureWorks2022 adatbázis HumanResources.Employee táblájának összes indexét.

    USE [msdb];
    GO
    --  Adds a new job, executed by the SQL Server Agent service, called "HistoryCleanupTask_1".
    EXEC [dbo].[sp_add_job] @job_name = N'HistoryCleanupTask_1',
                            @enabled = 1,
                            @description = N'Clean up old task history';
    GO
    -- Adds a job step for reorganizing all of the indexes in the HumanResources.Employee table to the HistoryCleanupTask_1 job.
    EXEC [dbo].[sp_add_jobstep] @job_name = N'HistoryCleanupTask_1',
                                @step_name = N'Reorganize all indexes on HumanResources.Employee table',
                                @subsystem = N'TSQL',
                                @command = N'USE [AdventureWorks2022];
    GO
    ALTER INDEX [AK_Employee_LoginID]
    ON [HumanResources].[Employee]
    REORGANIZE
    WITH (LOB_COMPACTION = ON);
    GO
    USE [AdventureWorks2022];
    GO
    ALTER INDEX [AK_Employee_NationalIDNumber]
    ON [HumanResources].[Employee]
    REORGANIZE
    WITH (LOB_COMPACTION = ON);
    GO
    USE [AdventureWorks2022];
    GO
    ALTER INDEX [AK_Employee_rowguid]
    ON [HumanResources].[Employee]
    REORGANIZE
    WITH (LOB_COMPACTION = ON);
    GO
    USE [AdventureWorks2022];
    GO
    ALTER INDEX [IX_Employee_OrganizationLevel_OrganizationNode]
    ON [HumanResources].[Employee]
    REORGANIZE
    WITH (LOB_COMPACTION = ON);
    GO
    USE [AdventureWorks2022];
    GO
    ALTER INDEX [IX_Employee_OrganizationNode]
    ON [HumanResources].[Employee]
    REORGANIZE
    WITH (LOB_COMPACTION = ON);
    GO
    USE [AdventureWorks2022];
    GO
    ALTER INDEX [PK_Employee_BusinessEntityID]
    ON [HumanResources].[Employee]
    REORGANIZE
    WITH (LOB_COMPACTION = ON);
    GO',
                                @retry_attempts = 5,
                                @retry_interval = 5;
    GO
    -- Creates a schedule named RunOnce that executes every day when the time on the server is 23:30.
    EXEC [dbo].[sp_add_schedule] @schedule_name = N'RunOnce',
                                 @freq_type = 4,
                                 @freq_interval = 1,
                                 @active_start_time = 233000;
    GO
    -- Attaches the RunOnce schedule to the job HistoryCleanupTask_1.
    EXEC [dbo].[sp_attach_schedule] @job_name = N'HistoryCleanupTask_1',
                                    @schedule_name = N'RunOnce';
    GO
    

Következő lépések