共用方式為


建立維護計畫

本主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 2014 中建立單一伺服器或多伺服器維護計畫。 使用 Management Studio,您可以使用下列兩種方式之一來建立這些維護計畫:使用維護計畫精靈或設計介面。 本精靈最適用於建立基本的維護計畫,使用設計介面建立計畫時可讓您利用加強的工作流程。

本主題內容

開始之前

限制事項

若要建立多伺服器維護計畫,必須設定多伺服器環境,其中包含一個主要伺服器以及一或多個目標伺服器。 多伺服器維護計畫必須在主要伺服器上建立和維護。 您可以在目標伺服器上檢視這些計畫,但不能加以維護。

安全性

權限

若要建立或管理維護計畫,您必須是 系統管理員 (sysadmin) 固定伺服器角色的成員。

使用 SQL Server Management Studio

若要使用維護計畫精靈來建立維護計畫

  1. 在 [物件總管] 中,按一下加號以展開您要建立維護計畫的伺服器。

  2. 按一下加號展開 [管理] 資料夾。

  3. 以滑鼠右鍵按一下 [維護計畫] 資料夾,然後選取 [維護計畫精靈]。

  4. 請遵循精靈的步驟來建立維護計畫。 如需詳細資訊,請參閱 Use the Maintenance Plan Wizard

使用設計介面建立維護計畫

  1. 在 [物件總管] 中,按一下加號以展開您要建立維護計畫的伺服器。

  2. 按一下加號展開 [管理] 資料夾。

  3. 以滑鼠右鍵按一下 [維護計畫] 資料夾,然後選取 [新增維護計畫]。

  4. 遵循建立維護計畫 (維護計畫設計介面) 中的步驟,建立維護計畫。

使用 TRANSACT-SQL

若要建立維護計畫

  1. 在物件總管中,連線到資料庫引擎的執行個體。

  2. 在標準列上,按一下 [新增查詢]

  3. 複製下列範例並將其貼到查詢視窗中,然後按一下 [執行]

    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 AdventureWorks2012  
    GO  
    ALTER INDEX AK_Employee_LoginID ON HumanResources.Employee REORGANIZE WITH ( LOB_COMPACTION = ON )   
    GO  
    USE AdventureWorks2012  
    GO  
    ALTER INDEX AK_Employee_NationalIDNumber ON HumanResources.Employee REORGANIZE WITH ( LOB_COMPACTION = ON )   
    GO  
    USE AdventureWorks2012  
    GO  
    ALTER INDEX AK_Employee_rowguid ON HumanResources.Employee REORGANIZE WITH ( LOB_COMPACTION = ON )   
    GO  
    USE AdventureWorks2012  
    GO  
    ALTER INDEX IX_Employee_OrganizationLevel_OrganizationNode ON HumanResources.Employee REORGANIZE WITH ( LOB_COMPACTION = ON )   
    GO  
    USE AdventureWorks2012  
    GO  
    ALTER INDEX IX_Employee_OrganizationNode ON HumanResources.Employee REORGANIZE WITH ( LOB_COMPACTION = ON )   
    GO  
    USE AdventureWorks2012  
    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:00.   
    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 sp_attach_schedule  
       @job_name = N'HistoryCleanupTask_1'  
       @schedule_name = N'RunOnce' ;   
    GO  
    
    

如需詳細資訊,請參閱