共用方式為


建立維護計畫

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

本主題內容

  • 開始之前:

    限制事項

    安全性

  • 使用下列方法建立維護計畫:

    SQL Server Management Studio

    Transact-SQL

開始之前

限制事項

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

安全性

權限

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

搭配回到頁首連結使用的箭頭圖示[Top]

使用 SQL Server Management Studio

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

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

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

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

  4. 請遵循精靈的步驟來建立維護計畫。 如需詳細資訊,請參閱<使用維護計畫精靈>。

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

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

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

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

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

搭配回到頁首連結使用的箭頭圖示[Top]

使用 Transact-SQL

若要建立維護計畫

  1. [物件總管] 中,連接到 Database Engine 的執行個體。

  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
    

如需詳細資訊,請參閱:

搭配回到頁首連結使用的箭頭圖示[Top]